
数据库中身份证有18位,用什么类型表示
只能用文本类型吗?长整数只能保存9位。如果用小数表示,使用科学表示法,查看不直观。而且,使用VC编程时,所用类型转换不直接。请问身份证号码最好的表示类型是什么?看来大家都...
只能用文本类型吗?长整数只能保存9位。如果用小数表示,使用科学表示法,查看不直观。而且,使用VC编程时,所用类型转换不直接。请问身份证号码最好的表示类型是什么?
看来大家都有相同的意见,就是使用文本类型,规定18位(相信近期不会改变位数),然后使用编程语言进行预检查其有效性,最可行的预检手段(针对18位),我是这么实行的,就是根据15位升级为18位的国标,对最后一位进行计算后,与输入的最后一位进行比较,比较相同,一般情况下即可认为输入正确。不过如果更精确的检测其有效性的方法就是根据身份证的国标,首先检测前6位地区码,然后出生日期等等。这些我也已经实现。很愿意与大家交流!solerier@msn.com 展开
看来大家都有相同的意见,就是使用文本类型,规定18位(相信近期不会改变位数),然后使用编程语言进行预检查其有效性,最可行的预检手段(针对18位),我是这么实行的,就是根据15位升级为18位的国标,对最后一位进行计算后,与输入的最后一位进行比较,比较相同,一般情况下即可认为输入正确。不过如果更精确的检测其有效性的方法就是根据身份证的国标,首先检测前6位地区码,然后出生日期等等。这些我也已经实现。很愿意与大家交流!solerier@msn.com 展开
7个回答
展开全部
数据库中,身份证18位一般用字符类型,varchar或者char来表示。优选char类型。
在数据库中,char代表固定长度的字符类型。
如:char(18),就代表可存储18个字符,如果输入时只输入少于18位的字符,后边会以空格补位,身份证正好18位的话,完全可以用这个类型。
在数据库中,varchar代表可变长度的字符类型。
如:varchar(18),就代表可存储18个字符,如果输入时只输入少于18位的字符,那么这个长度就是字符本身的长度,身份证正好18位的话,也同样可以用这个类型。
在数据库中,char代表固定长度的字符类型。
如:char(18),就代表可存储18个字符,如果输入时只输入少于18位的字符,后边会以空格补位,身份证正好18位的话,完全可以用这个类型。
在数据库中,varchar代表可变长度的字符类型。
如:varchar(18),就代表可存储18个字符,如果输入时只输入少于18位的字符,那么这个长度就是字符本身的长度,身份证正好18位的话,也同样可以用这个类型。

2024-10-08 广告
文本型(Text):用于输入文本或文本与数字相结合的数据,最长为255个字符(字节),默认值是50。在Access中,每一个汉字和所有特殊字符(包括中文标点符号)都算作一个字符。 表示方法:用英文单引号(’ ’)或英方双引号(” ”)括...
点击进入详情页
本回答由易讯数据提供
展开全部
当然是文本型
身份证号码是永远不会用来作数学计算的。况且我的身份证号码最后一位是X,用数字类型根本无法表示
身份证号码是永远不会用来作数学计算的。况且我的身份证号码最后一位是X,用数字类型根本无法表示
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我认为用字符型最好,这样可以避免溢出,防止首位有0的情况!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
solerier您好,我也是个初学者,在这里我发表一下我的个人意见,我个人认为还是使用字符型比较好.如果您用的是SQL server 2000的话推荐您使用varchar宽度为20位,这种数据类型可以根据您的数据内容调整宽度,使用起来非常方便.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果你不用字符型的你会知道什么是麻烦的,特别是数字类型,当然你可以用nchar text呵呵
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询