TSQL'de işlev parametrelerinin önüne 'N' koyma amacı nedir? ÖrneğinTSQL'de işlev parametrelerinin önüne bir 'N' yerleştirmenin amacı nedir?
, N
aşağıdaki kodda fonksiyon parametresinin önünde ne anlama gelir:
object_id(N'dbo.MyTable')
TSQL'de işlev parametrelerinin önüne 'N' koyma amacı nedir? ÖrneğinTSQL'de işlev parametrelerinin önüne bir 'N' yerleştirmenin amacı nedir?
, N
aşağıdaki kodda fonksiyon parametresinin önünde ne anlama gelir:
object_id(N'dbo.MyTable')
O sürekli bir "kamulaştırıldı" olarak da bilinir unicode dize gösterir.
http://support.microsoft.com/kb/239530 Eğer N, "Unicode veri kullanma" SQL Server Books Online'da konuda belgelendiği gibi büyük harfle tüm Unicode dizesi gelmelidir SQL Server Unicode dize sabitleri ile uğraşan. ya da sabit uzunlukta olan
http://msdn.microsoft.com/en-us/library/aa276823%28SQL.80%29.aspx
nchar
venvarchar
karakter veri tipleri (nchar) ya da değişken uzunluk (nvarchar) Unicode veri ve UNICODE UCS-2 karakter kümesi . n karakteri
nchar(n)
sabit uzunluklu Unicode karakter verileri. n, 1 ile 4,000 arasında bir değer olmalıdır. Depolama boyutu iki kez n bayttır.
nchar
için SQL-92 eşanlamlıları ulusal char ve ulusal karakter'dir. n karakteri
nvarchar(n)
Değişken uzunlukta Unicode karakter verileri. n, 1 ile 4,000 arasında bir değer olmalıdır. Depolama boyutu, bayt cinsinden girilen karakter sayısının iki katıdır. Girilen veriler 0 karakter uzunluğunda olabilir.
nvarchar
için SQL-92 eş anlamlıları, ulusal char ve ulusal karakterde değişen ulusal karakterlerdir.
Bu ilginç. Niçin 'N' 'Unicode' için durdu ve neden sadece 'U' – JohnFx
@JohnFx'i kullanmadıklarını merak ettim: Sadece bir tahmin, ama bahse girerim ki 'U' tarihsel olarak imzasız anlamına geliyordu. –
Varolan metin, unicode bulunmadan önce SQL92 standardındaydı. –