SORU
4 Mart 2009, ÇARŞAMBA


SQL Server yerine NCHAR, VARCHAR, NVARCHAR//CHAR kullanmak zorunda mıyız?

Unicode türlerini kullanmalıyız zaman bir kural mı var?

Avrupa dillerinin çoğu gördüm (Almanca, İtalyanca, İngilizce, ...) VARCHAR sütunları. aynı veritabanında sorun yok

Gibi bir şey arıyorum:

  1. -- ^ Çin . NVARCHAR kullanın
  2. Alman ve -- ^ Arapça varsa . NVARCHAR kullanın

Hangi sunucu/veritabanı harmanlama?

Her zaman burada önerilen gibi NVARCHAR kullanmak istemiyorum http://stackoverflow.com/questions/35366/varchar-vs-nvarchar-performance

CEVAP
5 Mart 2009, PERŞEMBE


NVARCHAR kullanmak istediğiniz gerçek nedeni varfarklıdillerde aynı sütun, Adres sütunlarda T-SQL olmadan çözme, ister görebilen verileri "doğal" SSMS veya istediğiniz için standardize üzerinde Unicode.

Eğer aptal depolama veritabanı gibi davranırsan, son derece mümkün ikilik (örneğin UTF-8) geniş dizeleri ve farklı (değişken uzunlukta) kodlamaları saklamak için. Sorun özellikle eğer kod sayfası farklı satırlar için farklı ise kodlamak ve kodunu çözmek için çalışırken, senin ne zaman gelir. Ayrıca, SQL Server kolayca T-SQL (potansiyel olarak degisken) şifrelenmiş sütun içinde sorgulama amaçlı veri ile başa çıkmak için mümkün olmayacak anlamına gelir.

NVARCHAR kullanarak önler.

Nispeten kısıtlı olan kullanıcı tarafından girilen veri içinde olan herhangi bir sütun için NVARCHAR tavsiye ederim.

I would recommend VARCHAR için herhangi bir sütun olan bir doğal anahtar (gibi bir araç plakası, sosyal güvenlik Numarası, Seri Numarası, Servis Etiketi, sipariş numarası, havaalanı çağrı işareti, vb.) veya kullanıcı girdi, ama çok kısıtlı (bir telefon numarası) ya da bir kod (ETKİN/KAPALI, E/H, M/F, M/S/D/W, vs.). Bu NVARCHAR kullanmak için kesinlikle bir neden yok.

Basit bir kural:

VARCHAR zaman kısıtlı olduğu garanti NVARCHAR yoksa

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • calicoJake

    calicoJake

    29 EKİM 2007
  • Shameless Maya

    Shameless Ma

    24 Mayıs 2012
  • Simon Hayter

    Simon Hayter

    20 HAZİRAN 2010