6 修改表结构
6.1 修改字段名以及修改结构(重命名)
DESC staff
;
ALTER TABLE staff CHANGE NAME sname VARCHAR
(10);
/*
修改字段(修改字段名以及数据类型和约束)
alter table 表名 change 旧字段名 新字段名 类型以及约束
*/
6.2 修改字段的结构(不重命名)
ALTER TABLE staff CHANGE
id id INT PRIMARY KEY AUTO_INCREMENT
;
ALTER TABLE staff MODIFY age INT NOT NULL
;
/*
修改字段的结构以及约束
alter table 表名 modify 字段名 类型以及约束
*/
6.3 增加字段
ALTER TABLE staff ADD phone INT NOT NULL
;
/*
增加字段
alter table 表名 add 字段名 类型 约束
*/
6.4 删除字段
ALTER TABLE staff DROP gender
;
/*
alter table 表名 drop 字段名
*/
6.5 查询表结构
desc 表名;
7 修改表名
RENAME TABLE staff TO yuangong
;
RENAME TABLE yuangong TO staff
;
/*
rename table 旧表名 to 新表名
*/
8 查看创建表的语句
SHOW CREATE TABLE staff
;
/*
show create table 表名
*/
9 复制表结构
9.1 仅仅复制表的结构
DESC student
;
CREATE TABLE copytable1 LIKE student
DESC copytable1
SELECT
* FROM copytable1
SHOW TABLES
注意点:
1、create table 表名
1 like 被复制的表
2、当前的复制语句,只是复制表的结构,不包括原始数据
9.2 复制表结构以及数据
复制表结构以及表里面存在的所有的数据
CREATE TABLE copy2 SELECT
* FROM student
;
SELECT
* FROM copy2
复制表结构以及部分数据以及部分字段
CREATE TABLE copy3 SELECT sname
,jointime FROM student WHERE
id>2;
SELECT
* FROM copy3
注意点:
1、复制表的结构和表的数据
create table 表名 select查询语句
9.3 复制表结构不需要数据
复制表的部分结构并且不要数据
CREATE TABLE copy4 SELECT
id,sname
,jointime FROM student WHERE
id<0
CREATE TABLE copy4 SELECT
id,sname
,jointime FROM student WHERE
0
SELECT
* FROM copy4
DESC copy4
注意点:
1、复制表的部分字段,但是不需要数据,直接让where引导的条件筛选恒不成立