第三章 MySQL数据类型(2010-8-17 22:02)
课程目录
数字类型
日期和时间类型
字符串(字符)类型
1、数字类型
MySQL支持所有的ANSI/ISO SQL92数字类型
包括准确数据类型(numeric、 decimal(dec)、integer(int)、smallint
tinyint和bigint),也包括近似数字的数据类型(float、real和double)。
1)decimal
decimal(5,2) 数字长度:5,小数位:2
numeric 等价于decimal
decimal和numeric值是作为字符串存储的,而不是作为二进制浮点数。超过精度时,
MySQL以该列范围的端点值(如:.999)存储该值。
2)整数
类型 占字节 最小值
tinyint 1
smallint 2
mediumint 3
int 4
bigint 8
所有的整型类型可以有一个可选(非标准的)属性unsigned。如果希望在一个列中值允许正值
并且需要一个稍大一点的数字范围,就可以使用无符号值。
3)float
单精度浮点数,4字节。
也可以指定精度,如: col float(4,2);
也可以是无符号数,如:col float(4,2)unsigned;
4) doeble
双精度浮点数,8个字节
也可以指定精度,如: col double(4,2);
也可以是无符号数,如:col double(4,2)unsigned;
2、日期时间
日期和时间类型有datetime,date,timestamp,time和year。
每一个类型均有合法值的范围,当它们赋予一个真正不合法的值时,这些值将会被“零”代替。
注意:MySQL允许存储某个不严格合法的日期,例如1999-11-31。MySQL认为应用程序有责任
来处理日期合法性的检查,而不是由SQL服务器来处理。
1)datetime 存储日期和时间
‘yyyy-mm-dd hh:mm:ss’格式检索和显示datetime类型。
范围支持 1000-00-00 00:00:00 到 9999-12-31
2)date 只存日期值
‘yyyy-mm-dd’
3) timestamp
可以从1970到2037之间的任一时刻,精度为一秒。
‘yyyy-mm-dd hh:mm:dd’作为字符串返回。
4)time
‘hh:mm:ss’ -838 到 838
小时部分可以>24,time类型不仅可以表示一天的时间,而且可以用来表示所经过的时间
或两个时间之间的时间间隔。
5)year
一个字节描述年份的类型
范围1901到2155。
3、 MySQL字符串(字符)类型
字符串类型有char、varchar、blob、text、enum和set,存放文本和图片。
1) char 固定长度字符串
2) varchar 可变长度字符串 name varchar(10),需要11个字节。
3) blob 是一个可以保存可变长度数据的二进制大对象。 16位。开销位:2
tinyblob 8位
mediumblob 24位
longblob 32位
4) text
text是一个忽略字母大小写的blob。
tinytext 8位
text 16位
mediumtext 24位
longtext 32位
5) enum
枚举enum是一个字符串对象,其值通常选自一个允许值列表中
-----------------------------------------------------------------------------------------------------------------
MySQL学习笔记(三)
最新推荐文章于 2022-12-18 22:54:02 发布