Karakter biçiminde veri depolama
How character-formatted data is stored in an exported data file depends on how the data was stored in the Microsoft SQL Server table.İki depolama desenler önemli şunlardır:
SQL Server char data
Diğer veri türleri dönüştürülür char Depolama
sql Server için depolama desenler char veri
SQL Server char data is always stored in the data file as the full length of the defined column.Örneğin, bir sütun olarak tanımlanan char(10) 10 karakter uzunluğu sütun. depolanan veriler, ne olursa olsun veri dosyasındaki her zaman kaplarIf the char data is shorter than the field length, spaces are appended to the data as padding; for more information, see set ANSI_PADDING (Transact-sql).Ancak, için varchar sürece bir önek veya seçtiğiniz karakterleri yalnızca gerçek sayısını girin, saklananSonlandırıcı.
Diğer veri türleri dönüştürülür char veri için depolama desenler
Noncharacter verileri depolanan karakter biçiminde veri dosyası ayrılan depolama alanı miktarını Kesiciler, alan uzunluğu ve önek uzunluğu birleşimiyle aşağıdaki şekilde belirlenir:
Alan uzunluğu değeri tarafından belirtilen sabit uzunluktaki karşısındaymış gibi ile önek uzunluğu, 0 ile hiçbir Sonlandırıcı alanı kabul edilir.Önek uzunluğu, 0 ile hiçbir Sonlandırıcı belirtme, bcp yardımcı programı veri türü için gerekli en büyük alanı çünkü bu alan uzunluğu İstemi'nde söz konusu gösterilen en fazla büyüklüğünü ayırır.Bu alıştırma yapar bir yerlerde belirlemek mümkün olduğu alan sona erer ve sonraki başlar.
Önek uzunluğu 0 ile bir sonlandırıcı ile alan uzunluğu değeri yoksayılır.Alan tarafından kullanılan depolama alanı verileri, artı herhangi bir sonlandırıcı uzunluğudur.
Önemli Hem bir önek ve bir sonlandırıcı belirtme yalnızca-xml biçimi dosyalarda desteklenir.
Önek uzunluğu 1, 2 veya 4 ile birlikte, alan uzunluğu değeri yoksayılır.Alan tarafından kullanılan alandır uzunluğunu, uzunluğu alanı önekleri, artı herhangi Kesiciler.
Daha sonra içine yeniden yükleme için bir veri dosyası oluşturmak tüm durumlarda Yukarıdaki listede, SQL Server için depolama alanı tutarminimum. Depolama alanı en aza indirmek için varsayılan dosya depolama türü ve varsayılan alan uzunluğu ile birlikte bir önek uzunluğu karakter kullanın.
Örnekler
Zaman içinde saklanan verileri alan uzunluğu, önek uzunluğu ve Kesiciler arasında etkileşim aşağıdaki örneklerde gösterilmektedir char biçimi.Bir önek-uzunluk değeri varsa, tarafından temsil edilen p.Bir sonlandırıcı varsa, tarafından temsil edilen t. Üç nokta (...) desen için her alan yinelendiğinden gösterir.
sql Server char veri için depolama desenler örnekleri:
Not
The char data is always stored as full length (that is, with one or more spaces, ' ', as padding).
Tablo şemadır t1 (c1 char(8)).5 Karakter değeri örneklerde varsayılmaktadır (temsil edilen Hello), hangi depolanır bir alan ,. 8 karakter uzunluğundaHer örnek veri alanları, üç boşluklar her zaman için 5 karakter eklenmesi gereken Hello değer.Üç nokta ile gösterilen eklenmiş boşluklar (∙∙∙).
|
Önek uzunluğu = 0 |
Önek uzunluğu = 1, 2 ya da 4 |
---|---|---|
Hiçbir Sonlandırıcı: |
Hello∙∙∙Hello∙∙∙... |
PHello∙∙∙PHello∙∙∙... |
Sonlandırıcı: |
Hello∙∙∙THello∙∙∙T... |
PHello∙∙∙TPHello∙∙∙T...
Not
Bu örnek yalnızca xml olmayan için geçerlidir biçim dosyası.
|
Noncharacter veri türlerini char depolama birimine dönüştürüldüğünde için depolama desenler örnekleri
Tablo şemadır t1 (c1 int), ve her satır bir tamsayı değeri 999.
Not
Dönüştürülmesi için veriler için char in varlığında bir önek uzunluğu 1, 2 veya 4, depolama veya bir alan ayırıcısı, veri değeri boşluk eklemeyi gereksiz.
|
Önek uzunluğu = 0 |
Önek uzunluğu = 1, 2 ya da 4 |
---|---|---|
Hiçbir Sonlandırıcı: |
999∙∙999∙∙... |
P999P999... |
Sonlandırıcı: |
999T999T... |
P999TP999T...
Not
Bu örnek yalnızca xml olmayan için geçerlidir biçim dosyası.
|
Not
Bir önek uzunluğu veya Sonlandırıcı belirtirseniz, son 9 boşluk karakterleri depolamak baytları ile 12 bayt kullanarak tamsayı değeri depolanır.