主键约束(唯一标识)

1、主键约束(唯一标识)***非空***, ***唯一***, ***被引用***;

  • 当表的某一列被指定为主键后,该列不能为空,不能有重复值出现。
  • 创建表时制定主键的两种方式:

create table stu(

sid char(6) primary key,

sname varchar(20),

);

指定sid列为主键列,即为sid列添加主键约束:

create table stu (

sid char(6),

sname varchar(20)

primary key(sid)

);

  • 修改表时指定主键:alter table stu add primary key(sid);
  • 删除主键:alter table stu drop primary key;

2、主键自增长

create table stu(

sid int primary key auto_increment,

sname varchar(20)

);

添加列的时候设置主键自增长:alter table stu add id int primary key auto_increment;

修改表时设置主键自增长:alter table stu change id id int auto_increment;

修改表时删除主键自增长:alter table stu change id id int;

3、非空约束

create table stu(

sid int primary key auto_increment,

sname varchar(20) not null

);

4、唯一约束

create table stu(

sid int primary key auto_increment,

sname varchar(20) unique

);

5、外键约束

外键必须是另一表的主键值(外键引用主键),外键可以重复,外键可以为空,一张表中可以有多个外键。

create table stu(

empno int primary key auto_incerment,

ename varchar(20),

dno int,

constraint fk_stu_dept foreign key(dno) references dept表(deptno) //指定外键列

);

alter table stu add constraint fk_stu_dept foreign key(dno) references dept(deptno);

6、一对一关系:在表中建立一对一关系比较特殊,需要让其中一张表的主键作为外键,即是主键又是外键。

8、一对多关系:外键是另一张表的主键

7、多对多关系:在表中建立多对多关系,需要使用中间表,即需要三张表,在中间表使用俩外键,分别引用其他两个表的主键。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值