MySQL 字符集和数据类型
字符集(charset)
字符集(character)
mysql中常见字符集
- utf8
- latin1
- gbk
#mysql查看字符集命令
show charset
校对规则(collation)
常见校对规则
- ci: 大小写不敏感
- cs或者bin: 大小写敏感
#查看校对规则命令
show collation
生产环境更改字符集(含数据)
alter database test character set utf8 collate utf8_general_ci;
alter table t1 character set utf8;
数据类型
数字型
1)整数:整数
2)浮点数:小数
3)定点数:精确值数值
4)BIT:位字段值
类 | 类别 | 说明 |
---|---|---|
整数 | TINYINT | 极小整数数据类型(-128~128 255个) |
整数 | SMALLINT | 较小整数数据类型(-215~215-1) |
整数 | MEDIUMINT | 中型整数数据类型 |
整数 | INT | 常规整数数据类型-231~231-1 |
整数 | BIGINT | 较大的整数类型(-263~263-1) |
浮点数 | FLOAT | 小型单精度(四个字节)浮点数 |
浮点数 | DOUBLE | 常规双精度(八个字节)浮点数 double(6,2)共计6位小数点后保留2位 |
定点数 | DECIMAL | 包含这整数部分,小数部分或者同时包括二者的精确值数值 |
BIT | BIT | 位字段值 |
文本 | CHAR | 定长 最多255个字符 |
文本 | VARCHAR | 变长 最多65,535个字符 |
文本 | TINYTEXT | 变长 最多255个字符 |
文本 | TEXT | 变长 最多65,535个字符 |
文本 | MEDIUMTEXT | 变长 最多16,777,215个字符 |
文本 | LONGTEXT | 变长 最多4,294,967,295个字符 |
整数 | ENUM | 一组固定的合法值组成的枚举 例如:enum(‘m’,‘f’) |
整数 | SET | 一组固定的合法值组成的集 |
二进制 | BINARY | 类似于char(定长) 存储二进制字节字符串而不是二进制字符串 |
二进制 | VARBINARY | 类似于varchar(变长) 存储二进制字节字符串而不是二进制字符串 |
BLOB | TINYBLOB | 最大长度为255个字节的BLOB列 |
BLOB | BLOB | 最大长度为65535个字节的BLOB列 |
BLOB | MEDIUMBLOB | 最大长度为16,777,215个字节的BLOB列 |
BLOB | LONGBLOB | 最大长度为4.294.967.295个字节的BLOB列data |
date | DATETIME | 年月日时分秒 |
date | timesstamp | 时间戳 |
####约束
unsigned #不能为负数
primary key #主键 唯一+非空
unique key #唯一键 唯一但可为空 unique key + not null = primary key
not null #不能为空
default #默认值
auto_increment #自增
数据类型 | 属性 | 说明 |
---|---|---|
数值 | UNSIGNED | 禁止使用负值 |
仅整数 | AUTO_INCREMENT | 生成包含连续唯一整数值的序列 |
字符串 | CHARACTER SET | 指定要是用的字符集 |
字符串 | COLLATE | 指定字符集整理 |
字符串 | BINARY | 指定二进制整理 |
全部 | NULL 或者 NOT NULL | 指定字段是否可以包含NULL值 |
全部 | DEFAULT | 如果新数据未指定值,则为其提供默认值 |
本文是原创文章,采用 CC BY-NC-SA 许可协议,完整转载请注明来自 半城小栈
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果