数据完整性

 

1、--单个主键
create table student(
id int primary key,
name varchar(50)
);

2、--联合主键

create table student(
id int,
classid int,
name varchar(50),
primary key(id,classid)
);

3、先创建表 然后单独对某列增加主键

create table student(
id int,
name varchar(50)
);

alter table student add primary key(id)

唯一约束(unique)

create table student(
id int primary key,
name varchar(50) unique
);

自动增长auto_increment

create table student(
id int primary key auto_increment,
name varchar(50) unique
);

注意:给主键增加自动增长列必须是整数类型(自增长必须显示主键)

   自动增长生成的数据要是删除,在重新添加在之前的基础上面继续增长

--非空约束 not null
create table student(
id int primary key auto_increment,
name varchar(50) unique not null
);

--默认值约束

create table student(
id int primary key auto_increment,
name varchar(50) unique not null,
address varchar(100) default '北京'
);

插入数据,默认值可以直接输入default

insert into student(name,address) values('eee',default)

外键:foreign key

--添加外键约束
create table stu(
sid int primary key,
name varchar(50) not null
)

create table score1(
score double,
sid int ,
constraint fk_stu_score1_sid foreign key(sid) references stu(sid)
)

约束的名称叫:fk_stu_score1_sid 外键约束:foreign 列:sid references stu(sid):参照学生表的sid

 也可以先建表然后新增外键

原文地址:https://www.cnblogs.com/jdwy24/p/14983402.html