SQL主要划分为三个类别,分别为
- DDL(Data Definition Languages)数据定义语言
- DML(Data Manipulation Language)数据操纵语言
- DCL(Data Control Language)数据控制语言
本篇博客主要记录一下 DDL 数据定义语言,有不妥的地方欢迎指正
注:MySQL版本为:5.6.17
1. 创建表
CREATE TABLE `test_table` (
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键ID',
`name` varchar(100) DEFAULT NULL COMMENT '名称',
`remark` text COMMENT '备注',
`birth` datetime DEFAULT NULL COMMENT '生日',
`gender` tinyint(3) unsigned DEFAULT '0' COMMENT '性别(0:女;1:男)',
`money` decimal(30,2) unsigned DEFAULT NULL COMMENT '钱',
`create_datetime` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '添加时间',
`update_datetime` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT
'更新时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='测试表';
- unsigned:非负数
- CURRENT_TIMESTAMP:当前时间。这里设置添加时间和更新时间默认为当前时间
- PRIMARY KEY:设置主键
- ENGINE:存储引擎
- CHARSET:字符集
对应的 java 实体类
// 主键ID
private Long id;
// 名称
private String name;
// 备注
private String remark;
// 生日
private Date birth;
// 性别(0:女;1:男)
private Integer gender;
// 钱
private BigDecimal money;
// 添加时间
private Date createDatetime;
// 更新时间
private Date updateDatetime;
2. 添加表字段
ALTER TABLE `test_table` ADD COLUMN `add_column` VARCHAR (50) NULL DEFAULT NULL COMMENT '添加字段' AFTER `id`;
- AFTER:把新添加的字段排在 id 字段的后面一个
3. 修改表字段
-- 修改表字段信息
ALTER TABLE `test_table` MODIFY COLUMN `add_column` VARCHAR (100) NULL DEFAULT NULL COMMENT '修改字段';
-- 修改表主键ID为自增列
ALTER TABLE `test_table` MODIFY COLUMN `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键' ;
-- 修改表字段名称和字段信息
ALTER TABLE `test_table` CHANGE add_column update_column VARCHAR (200) NULL DEFAULT NULL COMMENT '修改字段名称';
- add_column:修改前的字段名
- update_column:修改后的字段名
4. 删除表字段
ALTER TABLE `test_table` DROP COLUMN update_column;
5. 表重命名
ALTER TABLE test_table RENAME test_table_rename;
希望能够帮助到你
over