您的位置:首页 > 博客中心 > 数据库 >

Entity Framework Database/Code First实现对表进行压缩配置

时间:2022-03-10 16:59

我采用Database First,用Sql很容易就可以做到对一个表进行压缩。如以下:

CREATE TABLE [dbo].[Entities](
     [Id] [int] IDENTITY(1,1) NOT NULL,
     [Name] [nvarchar](max) NULL,

     Primary Key Clustered ([Id] ASC) WITH (DATA_COMpreSSION=PAGE)
 );

public class CreateDatabaseWithCompressionIfNotExists : CreateDatabaseIfNotExists<MyContext> { protected override void Seed(testEntities context) { var cmd = new SqlCommand(); var con = new SqlConnection(context.Database.Connection.ConnectionString); con.Open(); cmd.Connection = con; cmd.CommandType = CommandType.Text; cmd.CommandText = "alter table entities rebuild with (data_compression=page);"; cmd.ExecuteNonQuery(); } }Main函数里的调用 :
private static void Main(string[] args) { Database.SetInitializer(new CreateDatabaseWithCompressionIfNotExists()); //这里就会调用实现对表的修改了。 var test = new testEntities(); test.Entities.Add(new Model.Entity()); test.SaveChanges(); }


具体查看是否进行压缩的一种方式:
在:Microsoft SQL SERVER Management Studio里 "右键"相应的表->Properties->Storage->Compresion 这里可以看到相应的Compression type


具体查看是否进行压缩的一种方式:
在:Microsoft SQL SERVER Management Studio里 "右键"相应的表->Properties->Storage->Compresion 这里可以看到相应的Compression type

热门排行

今日推荐

热门手游