建SQL表时身份证号码的数据类型最好选什么

 我来答
汽车之路w
高粉答主

2020-07-04 · 关注我不会让你失望
知道大有可为答主
回答量:1.2万
采纳率:100%
帮助的人:277万
展开全部

建SQL表时,身份证号码为固定18位长,对该字段最好采用char数据类型

char类型对英文字符占用1个字节,对一个汉字占用2个字节,而且char存储定长数据很方便,char字段上的索引效率极高。

比如:定义char(10),那么不论你存储的数据是否达到了10个字节,都要占去10个字节的空间,不够的字符用空格去填。因为是固定长度,所以速度效率高。



扩展资料

比较SQL中的char、varchar、nchar、nvarchar的区别

1、前面加“n”与不加“n”

char、varchar这两个只能用于单字节来存储数据,适合英文,中文会不兼容。常用的汉字需要用两个字节来存储,所以就要使用nchar、nvarchar。

char、varchar因为是单字节的所以在存储的时候最大数值可以达到8000,而nchar、nvarchar是最大数值4000。

2、char与varchar的区别

直接举例子:char(10)就是给予一个固定的空间,不管存储的内容有没有到达10个字节,都占用10个字节的空间,同时,varchar(10)和nvarchar(10)的最大空间只能为10字节,如果不到10字节就不占用10字节。

琴彦珺09
2014-10-30
知道答主
回答量:13
采纳率:0%
帮助的人:5万
展开全部
最好选择:nvarchar(20)
因为身份证是可能有X所有不能选择int型
varchar(20):如果插入起过20位字符不会报错,导致非真实数据保存,个人觉得,nvarchar比较好
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
木泰兴
2014-10-30 · 超过23用户采纳过TA的回答
知道答主
回答量:65
采纳率:0%
帮助的人:24.4万
展开全部
字符型 因为有末位有X的 身份证号码
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
showtime622
2014-10-30 · TA获得超过122个赞
知道小有建树答主
回答量:148
采纳率:0%
帮助的人:110万
展开全部
nvarchar(20)

这个好点
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
tj_angela
2014-10-30 · TA获得超过7529个赞
知道大有可为答主
回答量:6797
采纳率:75%
帮助的人:2527万
展开全部
varchar(20)
如字段值只是英文,数字可选择varchar,英文,数字占一个字节
而字段值存在较多的双字节(中文)字符时用nvarchar, 任何字符占二个字节
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式