1、查看表
1.1 查看当前数据库里所有表
一般先切换到某个数据库,在查看。
SHOW TABLES;
1.2 查看指定数据库的所有表
SHOW TABLES FROM 数据库名;
2、创建表
格式:
CREATE TABLE IF NOT EXISTS 表名 (
列名1 数据类型 [列的属性],
列名2 数据类型 [列的属性],
...
列名n 数据类型 [列的属性]
) COMMENT '这里添加注释';
说明:
- 创建表的关键字用
CREATE TABLE
; - 必填参数为表名,圆括号里的必填项为列名和列的数据类型,列的属性为可选项;
- 列的属性,比如不许存储
NULL
,设置默认值等; - 列名、数据类型和列的属性用空格分隔开,列与列之间用逗号分隔开;
IF NOT EXISTS
是当创建已存在表名时会报错,用IF NOT EXISTS
可以规避;COMMENT
在圆括号外面给添加的表添加注释;- 当然可以不写创表的SQL语句,在DataGrip和Navicat这种数据库图形化界面上可以直接点击按钮创建。
举例:
用MySQL语句创建下面的表:
学生基本信息表
学号 | 姓名 | 性别 | 身份证号 | 学院 | 专业 | 入学时间 |
---|---|---|---|---|---|---|
20180101 | 杜子腾 | 男 | 158177199901044792 | 计算机学院 | 计算机科学与工程 | 2018/9/1 |
20180102 | 杜琦燕 | 女 | 151008199801178529 | 计算机学院 | 计算机科学与工程 | 2018/9/1 |
20180103 | 范统 | 男 | 17156319980116959X | 计算机学院 | 软件工程 | 2018/9/1 |
20180104 | 史珍香 | 女 | 141992199701078600 | 计算机学院 | 软件工程 | 2018/9/1 |
MySQL语句:
CREATE TABLE IF NOT EXISTS student_table(
student_id INT,
name VARCHAR(5),
sex ENUM('男', '女'),
identity_id INT,
department VARCHAR(30),
major VARCHAR(30),
enrollment_time DATE
) COMMENT '学生信息表';
3、修改表
3.1 修改表名
3.1.1 单个修改表名
ALTER TABLE 旧表名 RENAME TO 新表名;
3.1.2 批量修改多个表名
RENAME TABLE 旧表名1 TO 新表名1, 旧表名2 TO 新表名2, ... 旧表名n TO 新表名n;
3.2 增加列
3.2.1 新增列到表的列尾
ALTER TABLE 表名 ADD COLUMN 列名 列的数据类型;;
列的两个必选属性:
- 列名;
- 列的数据类型。
3.2.2 新增列到表中指定列的后面
ALTER TABLE 表名 ADD COLUMN 列名 列的数据类型 AFTER 指定列;
3.3 删除列
ALTER TABLE 表名 DROP COLUMN 列名;
3.4 修改列的排列位置
3.4.1 将列放在表的第一列
ALTER TABLE 表名 MODIFY 列名 列的数据类型 FIRST;
3.4.2 将列放在表中指定列的后面
ALTER TABLE 表名 MODIFY 列名 列的数据类型 AFTER 指定列名;
3.5 修改列的属性
3.5.1 修改列的数据类型
ALTER TABLE 表名 列名 列的数据类型;
3.5.2 同时修改列名和列的数据类型
ALTER TABLE 表名 CHANGE 旧列名 新列名 新列的数据类型;
3.6 删除列
ALTER TABLE 表名 DROP COLUMN 列名;
4、删除表
DROP TABLE IF EXISTS 表名1, 表名2...表名3;