我曾经读过varchar(char)用于存储每个字符1个bute的ASCII字符,而nvarchar(varchar)使用2个字节的UNICODE。
但是哪个ASCII?在 SSMS 2008 R2 中
DECLARE @temp VARCHAR(3); --CHAR(3)
SET @temp = 'ЮЯç'; --cyryllic + portuguese-specific letters
select @temp,datalength(@temp)
-- results in
-- ЮЯç 3
更新:哎呀,结果真的是ЮЯс而不是ЮЯç。谢谢,马丁