mysql——数据库设计中int与varchar中的长度含义
来源:互联网 发布:淘宝网店运营流程 编辑:程序博客网 时间:2024/05/20 01:35
一、int中的长度
提问:
MySQL的字段,unsigned int(3), 和unsinged int(6), 能存储的数值范围是否相同。如果不同,分别是多大?
回答:
不同,int(3)最多显示3位无符号整体,int(6)最多显示6位无符号数。
如果你的答案和上面的一致,恭喜你和我犯了一样的错误。
真实情况:
我们建立下面这张表:
- 1
- 2
- 3
- 4
- 5
- 6
- 1
- 2
- 3
- 4
- 5
- 6
插入一些数据后
发现,无论是int(3), int(6), 都可以显示6位以上的整数。但是,当数字不足3位或6位时,前面会用0补齐。
查下手册,解释是这样的:
mysql还支持选择在该类型关键字后面的括号内指定整数值的显示宽度(例如,INT(4))。该可选显示宽度规定用于显示宽度小于指定的列宽度的值时从左侧填满宽度。显示宽度并不限制可以在列内保存的值的范围,也不限制超过列的指定宽度的值的显示。
也就是说,int的长度并不影响数据的存储精度,长度只和显示有关,为了让大家看的更清楚,我们在上面例子的建表语句中,使用了zerofill。
结论:
无论是unsigned int(3)或 unsiend int(6),存储的都是4字节无符号整数, 也就是0~2^32。
二、varchar中的长度
首先 mysql 5.X 以上的版本的 定义中 表示的字符长度,如上varchar(20)你既可以添加20个英文字符,也可以添加二十个中文字符。 表示的字符长度
mysql 4.X 的版本表示的是字节长度,会根据字符集转变 内容字节长度存储。
阅读全文
1 0
- mysql——数据库设计中int与varchar中的长度含义
- MySQL中varchar长度
- mysql中int、bigint、smallint 和 tinyint的区别与长度的含义
- mysql中int、bigint、smallint 和 tinyint的区别与长度的含义
- mysql中int、bigint、smallint 和 tinyint的区别与长度的含义
- mysql中int、bigint、smallint 和 tinyint的区别与长度的含义
- mysql中int、bigint、smallint 和 tinyint的区别与长度的含义
- mysql中int、bigint、smallint 和 tinyint的区别与长度的含义
- mysql中int、bigint、smallint 和 tinyint的区别与长度的含义
- mysql中int、bigint、smallint 和 tinyint的区别与长度的含义
- mysql中int、bigint、smallint 和 tinyint的区别与长度的含义
- mysql中int、bigint、smallint 和 tinyint的区别与长度的含义
- mysql中int、bigint、smallint 和 tinyint的区别与长度的含义
- mysql中int、bigint、smallint 和 tinyint的区别与长度的含义
- mysql中int、bigint、smallint 和 tinyint的区别与长度的含义
- mysql中int、bigint、smallint 和 tinyint的区别与长度的含义
- mysql中int、bigint、smallint 和 tinyint的区别与长度的含义
- 在MySQL中,VARCHAR与CHAR的区别是什么?VARCHAR(50)中的50代表的含义是什么?
- WEB audio--播放上传的音乐
- a标签href值解析
- 亮风台HIAR增强现实SDK的使用入门(扫描一张图片,在图片上出现一个物体)
- 三级联动实例代码
- java读取配置文件
- mysql——数据库设计中int与varchar中的长度含义
- PHP 5大运行模式
- 剑指offer——调整数组顺序使奇数位于偶数前面
- 利用xib自定义cell xib里面包含两个cell时点击Button没有响应问题
- git学习
- MySQL入门
- android.os.NetworkOnMainThreadException
- The user specified as a definer ('root'@'%') does not exist 解决方法
- 【转】 字符串的全排列和组合算法