mysql如何给字段添加注释(mysql如何添加表的注释)
本部分内容是mysql系列的第四部分 ,若想查看前面的系列的内容,请见:SQL语言分类有哪几种?分别都对应着哪些关键字?都整理在这里了
这一部分主要介绍创建表时所填写的每一部分信息 。
创建表
创建表完整语法:
create table 表名( 字段名称1 数据类型[(长度) 约束条件 注释], 字段名称2 数据类型[(长度) 约束条件 注释] ) [编码 注释] # 1. 必选项 : 表名 字段名称 数据类型 # 2. 可选项 : 长度 约束条件 注释 编码 # 3.示例: create table students( id int(20) primary key auto_increment COMMENT '学生编号', name varchar(20) not null comment '学生姓名', grade varchar(5) not null comment '学生年级', sex enum('男','女') default '男' comment '性别' ) charset='utf-8' comment '学生表'
数据类型
在上面创建表时,给每个字段指定了具体的数据类型 ,但实际数据类型要包含的多,我们可以将其进行简单的分类,比如 :
- 字符文本类型
- 数字类型
- 日期类型
字符文本类型
类型 | 说明 | 大小 |
char | 定长字符串 | 0-255 bytes |
varchar | 变长字符串 | 0-65535 bytes |
tinytext | 短文本字符串 | 0-255 bytes |
text | 文本字符串 | 0-65535 bytes |
longtext | 长文本字符串 | 0-4 294967295 bytes |
数字类型
类型 | 说明 | 范围(有符号) | 范围(无符号) |
TINYINT | 微整数 | (-128,127) | (0,255) |
SMALLINT | 小整数 | (-32 768,32 767) | (0,65 535) |
MEDIUMINT | 中整数 | (-8 388 608,8 388 607) | (0,16 777 215) |
INT或INTEGER | 整数 | (-2 147 483 648,2 147 483 647) | (0,4 294 967 295) |
BIGINT | 大整数 | (-9,223,372,036,854,775,808,9 223 372 036 854 775 807) | (0,18 446 744 073 709 551 615) |
FLOAT | 单精度 浮点数值 | (-3.402 823 466 E 38,-1.175 494 351 E-38),0,(1.175 494 351 E-38,3.402 823 466 351 E 38) | 0,(1.175 494 351 E-38,3.402 823 466 E 38) |
DOUBLE | 双精度 浮点数值 | (-1.797 693 134 862 315 7 E 308,-2.225 073 858 507 201 4 E-308),0,(2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E 308) | 0,(2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E 308) |
DECIMAL | 小数值 | 依赖于M和D的值 | 依赖于M和D的值 |
日期类型
类型 | 说明 | 范围 | 格式 |
DATE | 日期 | 1000-01-01/9999-12-31 | YYYY-MM-DD |
TIME | 时间 | '-838:59:59'/'838:59:59' | HH:MM:SS |
YEAR | 年 | 1901/2155 | YYYY |
DATETIME | 日期和时间 | 1000-01-01 00:00:00/9999-12-31 23:59:59 | YYYY-MM-DD HH:MM:SS |
选项类型
类型 | 说明 | 举例 |
enum | 枚举,多个值中选择一个 | enum('男','女') |
set | 集合 - 多个值中选择一个或多个值 | SET('值1','值2','值3'...,'值n') |
字段约束
格式: create table 表名( 字段名 数据类型 约束, 字段名 数据类型 约束 ... )
其中约束主要包括:
这里需要区分几个约束,
- 主键约束 : 唯一且不能为空
- 唯一约束 : 值唯一
- 为空约束 : 值不能为空
其中主键约束 = 唯一约束 为空约束
注释
有时候我们看到表的后面都有注释 ,通过注释我们能快速地找到对应表 ,比如下面表的注释 。
当然,此注释有两种设置方式,一种就是通过客户端工具创建/修改表时添加注释信息 ,具体操作可参考:mysql系列之一文详解Navicat工具的使用(二)
初次之外,也可以SQL语句添加注释 。具体如下 :
create table students( id int(20) primary key auto_increment comment '学生编号', name varchar(20) not null comment '学生姓名', grade varchar(5) not null comment '学生年级', sex enum('男','女') default '男' comment '性别' ) comment '学生表'
这里使用的comment就是添加的注释信息,添加的注释不仅可以在字段上进行备注 ,也可以在表名上进行备注 。