varchar [ ( n | max ) ]
可變長度,非 Unicode 字元資料。n 可以是 1 到 8,000 的值。max 表示最大儲存體大小是 2^31-1 位元組。儲存體大小是輸入資料的實際長度再加上 2 位元組。看sql 2005 中的幫助,不知道這個2^31-1是怎麽來的?一個字符是一個字節還是一位?
可變長度,非 Unicode 字元資料。n 可以是 1 到 8,000 的值。max 表示最大儲存體大小是 2^31-1 位元組。儲存體大小是輸入資料的實際長度再加上 2 位元組。看sql 2005 中的幫助,不知道這個2^31-1是怎麽來的?一個字符是一個字節還是一位?
create table xtest (col varchar(max))
insert into xtest select replicate('a',8000)
update xtest set col=col+'123'
select len(col) from xtest
drop table xtest
/*
--------------------
8003
*/
-------------------------------------------不知道這個2^31-1是怎麽來的
========================
2^31-1就是微软定出来的,微软根据什么定出来的就不清楚,我们只能使用.
sql2000中只有8000我们也只能接受.
一個字符是一個字節還是一位?
一个汉字占两个字节,一个字母为一个字节,一个字节8比特