sqlserver中所有的數(shù)據(jù)類型 sql數(shù)據(jù)庫中的布爾值用什么數(shù)據(jù)類型?
sql數(shù)據(jù)庫中的布爾值用什么數(shù)據(jù)類型?在SQLSsqlserver2008,AlterTable如何修改多列的數(shù)據(jù)類型?sqlssqlvarbinary是什么類型?Varbinary類型與char和v
sql數(shù)據(jù)庫中的布爾值用什么數(shù)據(jù)類型?
在SQLS
sqlserver2008,AlterTable如何修改多列的數(shù)據(jù)類型?
sqls
sqlvarbinary是什么類型?
Varbinary類型與char和varchar類型類似,但它們存儲的是二進制數(shù)據(jù),也就是說,它們包含的是字節(jié)流而不是字符流,它們有二進制字符的集合和順序,它們的比較和排序是基于字節(jié)值的。
binary和varbinary的最大長度與char和varchar相同,只是它們定義了字節(jié)長度,而char和varchar對應的是字符長度。Varbinary是一種長度可以改變的二進制數(shù)據(jù)。
Varbinary[(n)]是n位變長二進制數(shù)據(jù)。其中n的取值范圍是從1到8000。它的存儲大小是n 4字節(jié),而不是n字節(jié)。
Varbinary在插入時不會填充0x00字節(jié),在查詢時也不會丟棄任何字節(jié)。比較時,所有字節(jié)都有效,0x00space(空格對應0x20)。
擴展數(shù)據(jù):
Varbinary( n | max):可變長度,其中n的取值范圍為1到8000,max表示最大存儲空間為2 ^ 31-1字節(jié),即最大4gb;
將數(shù)據(jù)轉換為二進制數(shù)據(jù)時,SQL Server將填充或截斷生成的二進制數(shù)據(jù)。具體規(guī)則如下:
1.填充(或擴展)的二進制數(shù)據(jù)是十六進制0x00的整數(shù)倍,即填充字節(jié)中的每一位都是0;
2.將字符類型轉換為二進制數(shù)據(jù)時,填充或截斷數(shù)據(jù)右側的數(shù)據(jù),填充值為0x00;
3.將其他類型的數(shù)據(jù)轉換為二進制數(shù)據(jù)時,填充或截斷數(shù)據(jù)左側的數(shù)據(jù),填充值為0x00;截斷數(shù)據(jù)時,保留低位數(shù)據(jù),截斷高位值。