create table t_player(
sno int(8) , -- suto_increment 自增约束只能添加在列级约束后面
sname varchar(5) not null , -- not null 非空约束只能在列级约束后面
sex char(1) default '男', -- default 默认约束值只能在列级约束后面
age int (3),
enterdate date,
classname varchar(10),
email varchar(15)
);
-- 1075 - Incorrect table definition; there can be only one auto column and it must be defined as a key
-- 错误解决办法:就是将auto_increment去掉
-- 在创建表以后添加约束:
alter table t_player add constraint pk_ply primary key (sno); -- 增加主键约束
alter table t_player modify sno int(8) auto_increment; -- 修改自增条件
alter table t_player add constraint ck_ply_sex check (sex='男'||sex='女');
alter table t_player add constraint ck_ply_age check (age>=18 and age<=50);
alter table t_player add constraint uq_ply_email unique (email);
-- 查看表结构
desc t_player;
验证约束添加成功:查看表结构: