尚硅谷之MySQL基础
8.2 表结构的操作TABLE
1、查看当前数据库的所有表格
show tables; #前面必须有use 数据库名语句,否则报错
show tables from 数据库名;
2、创建表结构
(1)基础版
CREATE TABLE 表名称( 字段名1 数据类型1, 字段名2 数据类型2, 字段名3 数据类型3 ); |
CREATE TABLE t_stu( sid INT, sname VARCHAR(100), gender CHAR ); |
(2)详细版
CREATE TABLE 表名称( 字段名1 数据类型1 主键 自增长, 字段名2 数据类型2 非空 默认值, 字段名3 数据类型3 )ENGINE=当前表格的引擎 AUTO_INCREMENT=自增长的起始值 DEFAULT CHARSET=表数据的默认字符集; |
CREATE TABLE t_stu( sid INT PRIMARY KEY AUTO_INCREMENT, sname VARCHAR(100) NOT NULL, gender CHAR NOT NULL DEFAULT '男' )ENGINE=INNODB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8; |
3、查看表结构
desc 表名称;
查看表的定义:SHOW CREATE TABLE 表名;
4、删除表结构
drop table 表名称;
注意:
数据和结构都被删除
所有正在运行的相关事务被提交
所有相关索引被删除
DROP TABLE 语句不能回滚
5、修改表结构
(1)重命名表
alter table 表名 rename 新表名;
rename table 表名 to 新表名;
(2)增加一列
alter table 表名 add 【column】 列名 数据类型; #默认在最后
alter table 表名 add 【column】 列名 数据类型 after 某一列;
alter table 表名 add 【column】 列名 数据类型 first;
(3)删除列
alter table 表名 drop 【column】 列名;
(4)修改列类型
alter table 表名 modify 【column】 列名 数据类型;
alter table 表名 modify 【column】 列名 数据类型 after 某一列;
alter table 表名 modify 【column】 列名 数据类型 first;
(5)修改列名等
alter table 表名 change 【column】 列名 新列名 数据类型