mysql主键和外键示例_SQL数据库中主键和外键的应用实例

145220934_1_20180925115106645

数据库

什么是数据库主键(Primary Key)?

数据库主键(Primary Key):指的是一个列或多列的属性组合,其属性值能唯一标识一条记录,通过它可强制表的实体完整性。

145220934_2_20180925115106724例如:

(tb_Book表:BookName、Author、Publishing、ISBN、BookClass、Count......)

其中每本图书的ISBN号是唯一的,ISBN即可为一个主键。 (key-ISBN)

145220934_3_20180925115106802

主键的类型:单一主键(Single Key): 唯一的键做主键

145220934_4_20180925115106895属性组合主键(Property Group Keys):一个属性组合标识一条记录。

145220934_5_201809251151075

主键的设置方法:要设置的主键列属性-右键-设置主键。

145220934_6_2018092511510767

主键的功能:1、保证数据库实体的完整性;

主键是能确定一条记录的唯一标识,不能重复。2、 加快数据库的操作速度;

提供标识,方便索引。3、DBMS自动按主键值的顺序显示表中的记录。如果没有定义主键,则按输入记录的顺序显示表中的记录。

主键的设置sql语句:

新建SQL Query1.sql 查询:然后添加如下语句---F5(运行)--执行即可得到一个带有主键的表格,STUDENT,主键为:StudentNo。

代码如下:

--这是SQL中的注释信息,使用两个减号来注释。drop table STUDENT --删除表STUDENTcreate table STUDEN --创建表STUDENT(StudentNo char(4) primary key, --设置StudentNo为主键StudentName char(8),Age int(4),Dept char(20))

145220934_7_20180925115107161

外键(Foreign Key):外键用于与另一张表的关联,是能确定另一张表记录的字段。外键是另一个表的主键,可以重复,可以有多个,也可以是空值。定义外键主要是为了保持数据的一致性。

145220934_8_20180925115107270

SC表中的StudentNo不是SC表的主键,但它和S表中的StudentNo相对应,并且S表中的StudentNo是S表的主键,则称SC表中的StudentNo是S表的外键。

145220934_9_20180925115107458

主键和外键所起约束作用:外键取值规则:空值或参照的主键值。

(1)插入非空值时,如果主键表中没有这个值,则不能插入。

(2)更新时,不能改为主键表中没有的值。

(3)删除主键表记录时,你可以在建外键时选定外键记录一起级联删除还是拒绝删除。

(4)更新主键记录时,同样有级联更新和拒绝执行的选择。

主键、外键和索引的区别:

145220934_10_20180925115107661

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值