Fitur kolom khusus untuk penyedia Entity Framework Core SQL Server
Halaman ini merinci opsi konfigurasi kolom yang khusus untuk penyedia SQL Server.
Unicode dan UTF-8
SQL Server 2019 memperkenalkan dukungan UTF-8 yang diperkenalkan, yang memungkinkan penyimpanan data UTF-8 dalam char
kolom dan varchar
dengan mengonfigurasinya dengan kolase UTF-8 khusus. EF Core 7.0 memperkenalkan dukungan penuh untuk pemetaan ke kolom UTF-8, dan dimungkinkan untuk menggunakannya di versi EF sebelumnya juga, dengan beberapa langkah tambahan.
EF Core 7.0 mencakup dukungan kelas satu untuk kolom UTF-8. Untuk mengonfigurasinya, cukup konfigurasikan jenis kolom ke char
atau varchar
, tentukan kolase UTF-8 (berakhir dengan _UTF8
), dan tentukan bahwa kolom harus Unicode:
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<Blog>()
.Property(b => b.Name)
.HasColumnType("varchar(max)")
.UseCollation("LATIN1_GENERAL_100_CI_AS_SC_UTF8")
.IsUnicode();
}
Kolom Tersebar
Kolom jarang adalah kolom biasa yang memiliki penyimpanan yang dioptimalkan untuk nilai null, mengurangi persyaratan ruang untuk nilai null dengan biaya lebih banyak overhead untuk mengambil nilai non-null.
Sebagai contoh, pertimbangkan hierarki jenis yang dipetakan melalui strategi table-per-hierarchy (TPH). Di TPH, tabel database tunggal digunakan untuk menyimpan semua jenis dalam hierarki; ini berarti bahwa tabel harus berisi kolom untuk setiap properti di seluruh hierarki, dan untuk kolom milik jenis langka, sebagian besar baris akan berisi nilai null untuk kolom tersebut. Dalam kasus ini, mungkin masuk akal untuk mengonfigurasi kolom sebagai jarang, untuk mengurangi persyaratan ruang. Keputusan apakah akan membuat jarang kolom harus dibuat oleh pengguna, dan tergantung pada harapan untuk data aktual dalam tabel.
Kolom dapat dibuat jarang melalui API Fasih:
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<RareBlog>()
.Property(b => b.RareProperty)
.IsSparse();
}
Untuk informasi selengkapnya tentang kolom jarang, lihat dokumen SQL Server.
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk