理解数据类型避免数据库设计出现覆盖
本文突出介绍了MySQL支持的很多重要的数据类型,并介绍如何使用。
数据库存储中的数据类型与大小各异。有些地方只存储数字类型,有些只存储文本类型,有些二者而兼之。而很多数据库支持各种专用类型:日期和时间类型,二进制字符类型以及布尔类型。
选择数据类型与数据相匹配是数据库设计中最为重要的部分,因为这种类型将会影响到RDBMS的效率与性能。所以,对RDBMS的数据类型选择应给予足够的重视。
这就是编写本文的主要目的。表A将列举了MySQL支持的绝大部分重要的数据类型,而MySQL是当前最为流行的免费RDBMS。文中还描述了何时与如何使用这些数据类型。这将有助于建立一个数据库的合理设计。
表 A
数据类型
描述
字节
推荐使用
SMALLINT
整数,从-32000到 +32000范围
2
存储相对比较小的整数。
比如: 年纪,数量
INT
整数,从- 到 + 范围
4
存储中等整数
例如: 距离
BIGINT
不能用SMALLINT 或 INT描述的超大整数。
8
存储超大的整数
例如: 科学/数学数据
FLOAT
单精度浮点型数据
4
存储小数数据
例如:测量,温度
DOUBLE
双精度浮点型数据
8
需要双精度存储的小数数据
例如:科学数据
DECIMAL
用户自定义精度的浮点型数据
变量;取决于精度与长度
以特别高的精度存储小数数据。
例如:货币数额,科学数据
CHAR
固定长度的字符串
特定字符串长度(高达255字符)
存储通常包含预定义字符串的变量
例如: 定期航线,国家或邮编
VARCHAR
具有最大限制的可变长度的字符串
变量; 1 + 实际字符串长度 (高达 255 字符)
存储不同长度的字符串值(高达一个特定的最大限度).
例如:名字,密码,短文标签
TEXT
没有最大长度限制的可变长度的字符串
Variable; 2 +聽 actual string length
存储大型文本数据
例如: 故事,产品描述
BLOB
二进制字符串
变量;2 + 实际字符串长度
存储二进制数据
例如:图片,附件,二进制文档
DATE
以 yyyy-mm-dd格式的日期
3
存储日期
例如:生日,产品满期
TIME
以 hh:mm:ss格式的时间
3
存储时间或时间间隔
例如:报警声,两时间之间的间隔,任务开始/结束时间
DATETIME
以yyyy-mm-ddhh:mm:ss格式结合日期和时间
8
存储包含日期和时间的数据
例如:提醒的人,事件
TIMESTAMP
以yyyy-mm-ddhh:mm:ss格式结合日期和时间
4
记录即时时间
例如:事件提醒器,“最后进入”的时间标记
YEAR
忘掉那些没必要的 一起去 自由的 在你我世界环岛wowo~ 以 yyyy格式的年份
1
存储年份
例如:毕业年,出生年
ENUM
一组数据,用户可从中选择其中一个
1或 2个字节
存储字符属性,只能从中选择之一
例如:布尔量选择,如性别
SET
一组数据,用户可从中选择其中0,1或更多。
从1到8字节;取决于设置的大小
存储字符属性,可从中选择多个字符的联合。
例如:多选项选择,比如业余爱好和兴趣。
对于一个完整的列表和详细描述,可以查看MySQL manual。你也可以阅读文章Choosing the Right Type for a Column。
:张琎
查看本文的国际来源
合肥医院哪男科好怎样判断宝宝得了手足口病
襄樊看白癜风医院
- 上一页:理解计划
- 下一页:理解如何影响和语句牛
-
记者:尤文将北方邦赫特视为非卖品,基耶利尼可能离开
名记者:尤文将加尔各答下莱茵视为噱头,基耶利尼可能离开 直播吧4月27日...
2024-10-21
-
陕西西安:传统文化 时尚表达
▲ 山西太原市非馀这两项跨媒体开发重现商业活动现场 一个是面塑创作者,...
2024-09-27
-
盈盈同在,气象万千。
其他用户" 漳州纤日常生活 "注目我 由此可知 读 先贤之外以陋室为品,一间...
2024-07-23
-
邮储银行济宁市分行实行员工分类差异化管理者, 持续开展案防“月月考”工作
为迅速增加职工整体案防潜能水平,邮储银不依沂水县汇丰银不依停滞其组织...
2024-06-13
-
蓝天燃气(605368.SH)发预盈,预计上半年盈利3.2亿元-3.6亿元,同比增加65.75%-8
蓝天燃气(605368.SH)发布公告,公司预估2022年半年度发挥作用归于香港交易所债...
2024-05-23
-
录取结束后考生最想做的事,女生做头发美甲,男生却全国统一
2022年的联改定早已完了美五轮,高改定们也获得了从更是的警惕。 联改定...
2024-04-16