SQL数据库数据类型长度的问题?
如char长度设为10,即中文最多输入5个,英文最多输入10个.但int的长度设为4,是怎么计算最大数字的?1111?...
如char长度设为10,即中文最多输入5个,英文最多输入10个.
但int的长度设为4,是怎么计算最大数字的?
1111? 展开
但int的长度设为4,是怎么计算最大数字的?
1111? 展开
6个回答
展开全部
本来不想回答这个问题的,但看这些回答者的答案实在让人看不过去。
int 存储数值的范围是:-2的32次方--2的32次发减1,(也就是-247483648至2147483647之间的所有正负整数),所以说int是不需要指定长度为多少的。
解释下char和nchar的异同
首先char众所周知最大取值是8000,每一个字节就是一个存储单位,英文和数值只占一个存储单位,所以char(10)可以最多容纳10个英文或者数字,但中文不一样,在某些系统下有每个中文会占4个存储单位,所以char(10)有可能容纳2个或者4个中文。
而nchar的最大取值范围是4000刚好是char的一半,为什么是4000呢?因为nchar采用了一种标准,这种标准的名字我就忘记了,它规定每个存储单位是2个字节而并非char的每存储单位1字节。所以nchar(10)最大可以容纳10个数字或者英文字母或者标点符号,而中文就最大可以容纳10个或者5个,视系统情况而定。
int 存储数值的范围是:-2的32次方--2的32次发减1,(也就是-247483648至2147483647之间的所有正负整数),所以说int是不需要指定长度为多少的。
解释下char和nchar的异同
首先char众所周知最大取值是8000,每一个字节就是一个存储单位,英文和数值只占一个存储单位,所以char(10)可以最多容纳10个英文或者数字,但中文不一样,在某些系统下有每个中文会占4个存储单位,所以char(10)有可能容纳2个或者4个中文。
而nchar的最大取值范围是4000刚好是char的一半,为什么是4000呢?因为nchar采用了一种标准,这种标准的名字我就忘记了,它规定每个存储单位是2个字节而并非char的每存储单位1字节。所以nchar(10)最大可以容纳10个数字或者英文字母或者标点符号,而中文就最大可以容纳10个或者5个,视系统情况而定。
展开全部
char中的长度指的字符的实际长度,而int中的长度不是指的字符的实际长度,而是指的字节的长度,int的长度为4则表示的是4个字节的空间长度,一个字节(byte)由8个位(bit)组成,也就是说一个int型的数据是由32bit组成,一个bit由0和1组成,是一个二进制位,是计算机中最小的表示单位,一个bit可以表示两个数字0和1,那32bit则可以表示2的31次方的数值,其它一个bit用于表示符号(正数或者负数)也就是说一个int型可以表示-2147483648至2147483647的数值。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
int没有指定长度,但是默认为4,长度4的话最大不就是9999了,另外char和nchar是有区别的,比如说char(10),中文一个汉字占2个字节,英文字母只占1个,但是nchar(10)就不一样了,nchar(10)可以输入10个汉字,10个英文字母
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
char长度设为10,即中文最多输入5个,英文最多输入10个
nchar长度设为10,即中文最多输入10个,英文最多输入10个(英文字符也是用2个字节来存储)
int的长度设为4,这个长度4应该指的是4个字节,最大可以存储2的32次方减1这么大的数,
nchar长度设为10,即中文最多输入10个,英文最多输入10个(英文字符也是用2个字节来存储)
int的长度设为4,这个长度4应该指的是4个字节,最大可以存储2的32次方减1这么大的数,
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不明白你说的什么意思?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询