-- 新建表
create table stu(
sid int,
sname varchar(20)
);
-- 修改表的名字
-- 语法格式rename table 旧表名 to 新表名;
rename table stu to stu1;
-- 修改字段名(也可以修改数据类型,数据类型不可省略不写)
-- 语法格式 alter table 表名 change 旧字段名 新字段名 类型(长度);
alter table stu1 change sid sid1 double;
-- 查看表结构
desc stu1;
-- 修改表的数据类型
-- 语法格式 alter table 表名 modify 字段名称 数据类型(长度);
alter table stu1 modify sid1 int;
-- 添加新的字段
-- 语法格式 alter table 表名 add 字段名 数据类型;(默认新添加的字段位于表的最后一列)
alter table stu1 add sex VARCHAR(1);
-- 指定添加字段的位置(添加在某个字段后面)
-- 语法格式 alter table 表名 add 字段名 类型 after 某个字段;
alter table stu1 add age int after sname;
-- 指定位置 把字段添加在最前面
-- 语法格式 alter table 表名 add 字段名 类型 first;
alter table stu1 add sid double first;
-- 删除某个字段
-- 语法格式 alter table 表名 drop 字段名;
alter table stu1 drop sid;
show tables;
show create table stu1;
-- CREATE TABLE `stu1` (
-- `sid1` int(11) DEFAULT NULL,
-- `sname` varchar(20) DEFAULT NULL,
-- `age` int(11) DEFAULT NULL,
-- `sex` varchar(1) DEFAULT NULL
-- ) ENGINE=InnoDB DEFAULT CHARSET=utf8
create table stu2(
sname varchar(10),
sid int
);
-- 可一次进行多次修改 每个add/drop之间用 逗号 分隔
alter table stu2 add sex varchar(1),add age int;
alter table stu2 add sex2 varchar(1) first,add age2 int after sex;
alter table stu2 drop sex1,drop sex2,drop age1,drop age2;
desc stu2;