修改表的结构
查看表的结构
describe user;
//desc
desc user;
删除表中的外键约束
alter table user drop foreign key user_ibfk_1 ;
//删除外键约束后才能将字段删除
alter table user drop oid ;
给表中添加外键约束
ALTER TABLE <数据表名> ADD CONSTRAINT <外键名>
FOREIGN KEY(<列名>) REFERENCES <主表名> (<列名>);
alter table user add column oid int ;
//添加外键约束
alter table user add constraint user_ibfk_1 foreign key user(oid) references orders(oid);
删除主键约束
alter table user drop primary key;
主键有auto_increment 约束的话:会出现下列错误
ERROR 1075 (42000): Incorrect table definition; there can be only one auto column and it must be defined as a key
删除约束
alter table user modify userid int;
//删除主键
alter table user drop primary key;
添加主键
alter table user add primary key user(userid);
给表改名字
rename table user to newuser;
alter table user rename to newuser;
添加一个字段
alter table user add age int default 18;
修改字段名
alter table user rename column oid to id;
修改列的约束
语句:alter table 表名 modify 字段名 列类型 列属性;
alter table user modify sex enum('男','女') default '女';
在数据库之间移动表
rename table user to test.newuser;
alter table
修改选项的语法格式如下:
- { ADD COLUMN <列名> <类型>
- | CHANGE COLUMN <旧列名> <新列名> <新列类型>
- | ALTER COLUMN <列名> { SET DEFAULT <默认值> | DROP DEFAULT }
- | MODIFY COLUMN <列名> <类型>
- | DROP COLUMN <列名>
- | RENAME TO <新表名>
- | CHARACTER SET <字符集名>
- | COLLATE <校对规则名> }