SQL语言的数据类型及属性修饰符
字符型1:char,varchar,text等
# 对应可用属性修饰符:
NOT NULL:非空约束
NULL:允许为空
DEFAULT ‘string’:默认值,不适用于text类型
CHARACTER SET ‘字符集’:设定字符集
查看当前MySQL字符集:show variables like ‘%char%’;
mysql> show variables like '%char%';
+--------------------------+---------------------------------------------------------------+
| Variable_name | Value |
+--------------------------+---------------------------------------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/local/mysql-5.6.14-linux-glibc2.5-x86_64/share/charsets/ |
+--------------------------+---------------------------------------------------------------+
8 rows in set (0.00 sec)
查看可使用字符集:show character set;
COLLATION:设定字符集的排序规则
查看可用排序规则:show collation;
字符型2:binary,varbinary,blob等
# 对应可用属性修饰符
NOT NULL,NULL
DEFAULT:不适用于blob类型
整型
# 对应可用属性修饰符:
AUTO_INCREMENT:自动增长(前提:非空、唯一,支持索引,非负值)
UNSIGNED:无符号
NOT NULL,NULL
DEFAULT
浮点型
# 对应可用属性修饰符:
NOT NULL,NULL
DEFAULT
UNSIGNED
日期时间型
# 对应可用属性修饰符:
NOT NULL,NULL
DEFAULT
内置类型
# ENUM和SET的区别
ENUM:枚举,一般存储字串,只能取其中一个使用
SET:集合,一般存储单个字符,可组合各字符形成字串使用
# 对应可用属性修饰符:
NOT NULL,NULL
DEFAULT