创建表时,可以指定某列不为空
-- 指定id列不为空
create table student (id int not null,name,varchar(20));
创建表时,可以指定某列为unique ,表示,该列出现的元素只能有一次,不能重复(唯一)
-- 指定id唯一
create table student (id int unique,name varchar(20));
创建表,指定插入数据时,name列为空,默认值是"未命名"
create table student (id int unique,name varchar(20) default '未命名')
create table student (id int primary key auto_increment,name varchar(20));
语法
-- 字段名 == 列名
create table 表名 (列名 类型 foreign key (本表需要关联的字段名) references 主表(字段名) ,
foreign key (字段名) references 主表(字段名).....);
create table classes (id int primary key anto_increment, name varchar(20),classes_id int foreign key (classes_id) references student(id));
注释:
创建一个班级表,一个班级对应多个学生,classes_id为外键,关联student表id.可以多个外键约束
foreign key (字段名):表示副表,也就是该表中你想要和主表关联的字段名.
references 主表名(字段名):与副表进行关联的字段名.
对副表classes进行insert插入classes_id操作,主表student中的id存在要插入的数据,才能成功插入,否则报错.
外键约束用于关联其他表的 主键或唯一键;