MySQL数据类型决定了数据的存储格式,代表了不同的信息类型。MySQL数据类型主要有:
(1)整型:TINYINT, SMALLINT, MEDIUMINT, INT, BIGINT。
(2)浮点型:FLAOT, DOUBLE。
(3)字符串类型:CHAR,VARCHAR,TINYTEXT,TEXT,MEDIUMTEXT,LONGTEXT,ENUM,SET。
(4)日期类型:YEAR,TIME,DATE,DATETIME,TIMESTAMP。
1 整型
取值范围如果加了 unsigned,则最大值大一倍。如TINYINT UNSIGNED的取值范围为(0-255)。
2 浮点型
例:FLOAT(6,3):如果插入一个数123.45678,实际数据库里存的是123.457,但总个数还以实际为准,即6位。整数部分最大是3位,如果插入数12.123456,存储的是12.1234,如果插入12.12,存储的是12.1200.
3 日期
若定义一个字段为timestamp,这个字段里的时间数据会随其他字段修改的时候自动刷新,所以这个数据类型的字段可以存放这条记录最后被修改的时间。
date(日期)如:'2018-12-2';time(时间):如'12:25:36';datetime(日期时间):'2018-12-22 22:06:44';
4 字符串
(1)CHAR与VARCHAR的区别:
①char(n) 若存入字符数小于n,则以空格补于其后,查询之时再将空格去掉。所以char类型存储的字符串末尾不能有空格,varchar不限于此。
②char(n) 固定长度,char(4)不管是存入几个字符,都将占用4个字节,varchar是存入的实际字符数+1个字节(n<=255)或2个字节(n>255),所以varchar(4),存入3个字符将占用4个字节。
参考
(1)MYSQL中数据类型介绍