时间:2021-07-01 10:21:17 帮助过:2人阅读
1、数值类数据列类型
| 
 数据列类型  | 
 存储空间  | 
 说明  | 
 取值范围  | 
| 
 TINYINT  | 
 1字节  | 
 非常小的整数  | 
 带符号值:-128~127 无符号值:0~255  | 
| 
 SMALLINT  | 
 2字节  | 
 较小的整数  | 
 带符号值:-32768~32767 无符号值:0~65535  | 
| 
 MEDIUMINT  | 
 3字节  | 
 中等大小的整数  | 
 带符号值:-8388608~8388607 无符号值:0~16777215  | 
| 
 INT  | 
 4字节  | 
 标准整数  | 
 带符号值:-2147483648~2147483647 无符号值:0~4294967295  | 
| 
 BIGINT  | 
 8字节  | 
 大整数  | 
 带符号值:-263~263-1 无符号值:0~264-1  | 
| 
 FLOAT  | 
 4或8字节  | 
 单精度浮点数  | 
 最小非零值:+- 1.175494351E-38 最大非零值:+- 3.402823466E+38  | 
| 
 数据列类型  | 
 存储空间  | 
 说明  | 
 取值范围  | 
| 
 DOUBLE  | 
 8字节  | 
 双精度浮点数  | 
 最小非零值:+- 2.225073E-308 最大非零值:+- 1.797693E+308  | 
| 
 DECIMAL  | 
 自定义  | 
 以字符串形式表示的浮点数  | 
 取决于存储单元字节数  | 
整型注意事项:
INT(3)、SMALLINT(3)等整型后面的数字不会影响数值的存储范围,只会影响显示 整型后面的数字只有配合零填充的时候才有实际意义。 整型后面的数字可以省略 浮点型注意事项: 浮点型后面的数字会将存入的数字四舍五入,例如:把一个1.234存入FLOAT(6,1)数据列中,结果是1.2,6代表显示长度,1代表小数位长度,会四舍五入。 2、字符串类数据列类型| 
 数据列类型  | 
 存储空间  | 
 说明  | 
 取值范围  | 
| 
 CHAR[(M)]  | 
 M字节  | 
 定长字符串  | 
 M字节  | 
| 
 VARCHAR[(M)]  | 
 L+1字节  | 
 可变字符串  | 
 M字节  | 
| 
 TINYBLOB,TINYTEXT  | 
 L+1字节  | 
 非常小的BLOB(二进制大对象)和文本串  | 
 28-1字节  | 
| 
 BLOB,TEXT  | 
 L+2字节  | 
 小BLOB和文本串  | 
 216-1字节  | 
| 
 MEDIUMBLOB, MEDIUMTEXT  | 
 L+3字节  | 
 中等的BLOB和文本串  | 
 224-1字节  | 
| 
 LONGBLOB, LONGTEXT  | 
 L+4字节  | 
 大BLOB和文本串  | 
 232-1字节  | 
| 
 ENUM(‘value1’,’value2’…)  | 
 1或2字节  | 
 枚举:可赋予某个枚举成员  | 
 65535个成员  | 
| 
 SET(‘value1’,‘value2’…)  | 
 1,2,3,4或8字节  | 
 集合:可赋予多个集合成员  | 
 64个成员  | 
| 
 数据列类型  | 
 存储空间  | 
 说明  | 
 取值范围  | 
| 
 DATE  | 
 3 字节  | 
 “YYYY-MM-DD”格式表示的日期值  | 
 1000-01-01~9999-12-31  | 
| 
 TIME  | 
 3 字节  | 
 “hh:mm:ss”格式表示的时间值  | 
 -838:59:59-838:59:59  | 
| 
 DATETIME  | 
 8 字节  | 
 “YYYY-MM-DD hh:mm:ss”格式  | 
 1000-01-01 00:00:00~9999-12-31  | 
| 
 TIMESTAMP  | 
 4 字节  | 
 “YYYYMMDDhhmmss”格式表示的时间戳  | 
 19700101000000-2037年的某个时刻  | 
| 
 YEAR  | 
 1 字节  | 
 “YYYY”格式的年份值  | 
 1901~2155  | 
在MySQL的表达式中,如果某个数据值的类型与上下文所要求的类型不相符,MySQL则会根据将要进行的操作自动地对数据值进行类型转换。如:
1+’2’ #会自动转换成1+2=3
1+’abc’ #会自动转换成1+0=1
6、数据字段属性
UNSIGNED 只能用于设置数值类型,不允许出现负数 最大存储长度会增加一倍 ZEROFILL 只能用于设置数值类型,在数值之前会自动用0补齐不足的位数 AUTO_INCREMENT 用于设置字段的自动增长属性,每增加一条记录,该字段的值会自动加1 NULL和NOT NULL 默认为NULL,即插入值时没有在此字段插入值,默认为NULL值,如果指定了NOT NULL,则必须在插入值时在此字段填入值 DEFAULT 可以通过此属性来指定一个默认值,如果没有在此列添加值,那么默认添加此值MySQL数据表设计
标签: