sql中CHAR后面的数字可以随便写吗?

 我来答
帐号已注销
2012-10-08 · TA获得超过380个赞
知道小有建树答主
回答量:277
采纳率:0%
帮助的人:230万
展开全部
一楼的说法不太准确.
1.char和varchar各有优缺点.char是定长,实际长度超过指定长度是,右边被截去,不足时右边补空格;varchar是变长,数字表示允许的最大长度,在储存时用另外一个字节来保存实际的长度.
2.一般来说,char确实会导致一定的储存空间浪费,但在进行数据操作的时候速度更快;varchar虽然能节省储存空间,但很多操作多每次要去查询字段的实际长度,这会导致数据操作速度变慢.
4.char和varchar各有用途.在已知字段长度的情况下(比如学号字段,一般每个学生的学号长度是固定一样的),可以用char类型,既不会浪费空间,有不会拖慢速度.如果字段的长度是不确定,这是是用char还是varchar就需要考虑一下了.比如,中国人的名字一般是两个/三个或者四个字,最多五个字,如果你的数据库对自个字段的操作特别多的话,你也可以考虑将个字段设为char(5).因为现在寸寸设备的价格已经很便宜了,而用户对系统的相应速度要求比较高,用空间换时间.
5.说到底,这还是一个空间与速度之间取哪个的问题,这要结合实际情况具体分析.
无名之影行者
2012-10-07 · 超过24用户采纳过TA的回答
知道答主
回答量:100
采纳率:68%
帮助的人:14.4万
展开全部
不能,char()它是固定变量:也就是说你在char后面定的值是死的,你定的是多少就是多少字节,而且特占空间;
你可以用varchar()它是可变变量:也就是说你在varchar后面定的值是最大值的,当你在里面输入信息所占的多少字节就是多少字节,它可以随着你占用的字节的大小自己更改(前提是在你所占用的字节,没有超过你所设定的字节,超过了是输入不进去)。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式