数据库varchar和nvarchar的区别

今天把一个 cstring的对象写入数据库,把存储类型设置为varchar时数据不能保存,改为nvarchar时就能保存,能不能说说原因
我是在英文输入状态下输入了1111就出现上面的结果啊,应该不是大小的问题,两个数据库都设置为50的

varchar是字符类型~存储可变长度的字符串~最大长度为8000个字符
nvarchar是字符串类型~存储可变长度的unicode字符串,最大长度4000个字符
你要写入的对像是字符还是字符串啊~~或者是否用了unicode的编码方式“?
温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-05-05
varchar(n):变长型字符数据类型,存储最长长度为8,000
个字符
nvarchar(n):可变长度
Unicode
数据,其最大长度为
4,000
字符.字节的存储大小是所输入字符个数的两倍,就是说它是双字节来存储数据的。如果存储数据如果存在单字节时,它也是以双字节来占用存储空间的。
varchar一般适用于英文和数字。
第2个回答  2010-12-15
你可能是字符串长度太长了,varchar设定的长度根本就不够保存,nvarchar是varchar的一倍,就给保存住了
第3个回答  2010-12-15
varchar(n)
长度为 n 个字节的可变长度且非 Unicode 的字符数据。存储大小为输入数据的字节的实际长度
nvarchar(n)
包含 n 个字符的可变长度 Unicode 字符数据。字节的存储大小是所输入字符个数的两倍。
第4个回答  2010-12-15
我帮你查查

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网