create table 表名( 列名 列名类型 not null, 列名 列名类型 unique, 列名 列名类型 default 默认值, 列名 列名类型 primary key, constraint 约束名 foreign key(字段名) references 主表(被引用列) )
支持类型是否可以起约束名
列级约束除了外键否
表级约束除了非空是
2.修改表时添加约束
非空
添加非空
alter table 表名 modify column 字段名 字段类型 not null;
删除非空
alter table 表名 modify column 字段名 字段类型 ;默认
添加默认
alter table 表名 modify column 字段名 字段类型 default 值;
删除默认
alter table 表名 modify column 字段名 字段类型 ;主键
添加主键
alter table 表名 add【 constraint 约束名】 primary key(字段名);
删除主键
alter table 表名 drop primary key;唯一
添加唯一
alter table 表名 add【 constraint 约束名】 unique(字段名);
删除唯一
alter table 表名 drop index 索引名;外键
添加外键
alter table 表名 add【 constraint 约束名】 foreign key(字段名) references 主表(被引用列);
删除外键
alter table 表名 drop foreign key 约束名;
三、自增长列
特点不用手动插入值,可以自动提供序列值,默认从1开始,步长为1
auto_increment_increment
如果要更改起始值:手动插入值
如果要更改步长:更改系统变量
set auto_increment_increment=值;一个表至多有一个自增长列自增长列只能支持数值型自增长列必须为一个key创建表时设置自增长列create table 表(	字段名 字