# 一、数据类型-整型
/*
Tinyint 1字节
Smallint 2字节
Mediumint 3字节
Int/Intager 4字节
Bigint 8字节
特点:①默认为有符号(无符号不能插入负数),无符号的关键字为unsigned
②超出整型的范围时,会报out of range ;并且插入临界值
③如果不设置长度,会有默认的长度,也可以手动 例如: int(12)
④上述的int(12)中的12是指显示的宽度如果不够会用0在左边填充,但是必须搭配着zerofill使用!!
*/
#如何设置无符号,有符号
/*
DROP TABLE IF EXISTS test_int;
CREATE TABLE test_int(
t1 INT, #有符号
t2 INT UNSIGNED #无符号
);
*/
# 二、数据类型——小数
/*
浮点型:
float(M,D) 4字节
double(M,D) 8字节
定点型:
dec(M,D)/decimal(M,D) M+2字节
特点:①M和D M表示整数部分和小数位数的总位数,D表示保留小数点后的位数
②超出整型的范围时,会报out of range ;并且插入临界值
③M和D都可以省略,对于decimal M默认为10,D默认为0;float和double会根据插入数值的精度来决定精度
④定点型的精度较高
原则:所选择的类型越简单越好,能保存数值的类型越小越好
*/
# 三、数据类型——字符型
/*
较短的文本:
char(M) M (M表示字符数,不是字节数) M可以省略,默认为1
varchar(M) M (M表示字符数,不是字节数) M不可以省略
enum('值1','值2',……) 枚举类型,只能选择一个数进行插入 例如:enum('男','女')
set('值1','值2',……) 集合类型,能选择多个数进行插入 例如:enum('篮球','跑步','游泳','弹钢琴')
char和varchar的区别:
char是不变长度;varchar是可变长度
varchar 比较节省空间
使用char的效率稍高
存储固定长度的字符是使用char。例如:存储性别时,是有男/女,使用char(1)就可以
较长的文本:
text
blob(保存较大的二进制)
*/
# 四、数据类型——日期型
/*
date 只保存日期
time 只保存时间
year 只保存年
datetime 保存日期+时间
timestamp 保存日期+时间
特点:
字节 范围 是否受时区的影响
datetime 8 1000-9999 否
timestamp 4 1970-2038 是
*/
/*
CREATE TABLE test_date(
d1 datetime,
d2 timestamp
);
INSERT INTO test_date VALUES(NOW(),NOW());
*/
SELECT * FROM test_date;
19数据类型——MySQL
最新推荐文章于 2024-08-18 15:09:09 发布