sql server数据库编码(varchar,nvarchar的区别)

系统 1703 0

开始什么都别说,先来个例子

打开sql server创建一个表:

create database testdb

go

create table test
(
name1 varchar(10),

name2 nvarchar(10)
)

go

insert into test values('一二三四五','一二三四五六七八九十') --成功

insert into test values('一二三四五六','一二三四五六七八九十') --第一个字段插入失败

insert into test values('一二三四五','一二三四五六七八九十一') --第二个字段插入失败

第一个字段对多可以插入汉字5个

第二个字段对多可以插入汉字10个

------------------------------------------------------------------------------------

insert into test values('1234567890','1234567890') --成功

insert into test values('12345678901','1234567890') --第一个字段插入失败

insert into test values('1234567890','12345678901') --第二个字段插入失败

(插入字母和一些ascii字符符号,结果一样)

第一个字段对多可以插入ascii码10个

第二个字段对多可以插入ascii码10个

---------------------------------------------------------------------------------------

insert into test values('一二三aaaa','一二三四五六七八九十') --成功

insert into test values('一二三aaaab','一二三四五六七八九十') --第一个字段插入失败

insert into test values('一二三aaaa','一二三四五六七八ab') --成功

insert into test values('一二三aaaa','一二三四五六七八abc') --第二个字段插入失败

--------------------------------------------------------------------------------------

总结:varchar类型 ascii最多可以存10个,汉字最多可以存5个

nvarchar类型 ascii和汉字最多都可以存10个

说明:varchar类型 ascii字符占一个字节,汉字占两个字节

nvarchar类型 总是一个字符占2个字节

而且:

create table test
(
name1 varchar(10), --所占空间10个字节

name2 nvarchar(10) --所占空间20个字节
)

验证:

select * from test

sql server数据库编码(varchar,nvarchar的区别)

select name1,len(name1),name2,len(name2) from test

sql server数据库编码(varchar,nvarchar的区别)

sql server数据库编码(varchar,nvarchar的区别)


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论