什么是主键与外键?外键名词解释

2025-04-04 22:50:02 0

什么是主键与外键?外键名词解释

本文目录

什么是主键与外键

1、主关键字(主键,primary key)是被挑选出来,作表的行的惟一标识的候选关键字。一个表只有一个主关键字。主关键字又可以称为主键。 主键可以由一个字段,也可以由多个字段组成,分别成为单字段主键或多字段主键。

2、外键:如果公共关键字在一个关系中是主关键字,那么这个公共关键字被称为另一个关系的外键。由此可见,外键表示了两个关系之间的相关联系。以另一个关系的外键作主关键字的表被称为主表,具有此外键的表被称为主表的从表。外键又称作外关键字。

扩展资料:

主关键字的作用

1、保证实体的完整性;

2、加快数据库的操作速度;

3、在表中添加新记录时,ACCESS会自动检查新记录的主键值,不允许该值与其他记录的主键值重复;

4、ACCESS自动按主键值的顺序显示表中的记录。如果没有定义主键,则按输入记录的顺序显示表中的记录。

参考资料来源:百度百科-外键

参考资料来源:百度百科-主关键字

外键名词解释

如果公共关键字在一个关系中是主关键字,那么这个公共关键字被称为另一个关系的外键。由此可见,外键表示了两个关系之间的相关联系。以另一个关系的外键作主关键字的表被称为主表,具有此外键的表被称为主表的从表。外键又称作外关键字。

数据库中的外键是什么意思

外键也称为外码或外部关键字。如果一个属性集不是所在关系的关键字,但是是其他关系的关键字,则该属性集称为外部关键字。 在关系数据库中可以通过外键使两个关系关联,这种联系通常是一对多的,其中主关系称为被参照关系,从关系称为参照关系。

外键的作用是什么

外键的作用:

保持数据一致性,完整性,主要目的是控制存储在外键表中的数据。 使两张表形成关联,外键只能引用外表中的列的值或使用空值。

阻止执行:

1、从表插入新行,其外键值不是主表的主键值便阻止插入;

2、从表修改外键值,新值不是主表的主键值便阻止修改;

3、主表删除行,其主键值在从表里存在便阻止删除(要想删除,必须先删除从表的相关行);

4、主表修改主键值,旧值在从表里存在便阻止修改(要想修改,必须先删除从表的相关行)。

级联执行:

1、主表删除行,连带从表的相关行一起删除;

2、主表修改主键值,连带从表相关行的外键值一起修改。两种方法提供给用户选择。无论选取哪种方法,从表里都不会有多余行。从另一个角度理解,用拒绝同一事物在从表中的标志与主表不一致来实现与主表中的标志一致。

扩展资料:

外键使用原则:

1、 为关联字段创建外键。

2、 所有的键都必须唯一。

3、避免使用复合键。

4、外键总是关联唯一的键字段。

阻止执行和级联执行的两种实现方法,通过下面方式选择:

1、界面:设级联更新、级联删除两个选择方框,选取则级联执行、不选取则阻止执行;

2、命令:设E)kSCM)E、RESTRICT两个可选项,CASCADE为级联执行、RESTRICT为阻止执行。

参考资料来源:百度百科——外键

外键是什么

外键是该表是另一个表之间联接的字段(外键必须为另一个表中的主键)外键的用途是确保数据的完整性。它通常包括以下几种:实体完整性,确保每个实体是唯一的(通过主键来实施)域完整性,确保属性值只从一套特定可选的集合里选择关联完整性,确保每个外键或是NULL(如果允许的话)或含有与相关主键值相配的值 如果你在没有定义数据库的实际外键的情况,试图强制执行关联完整性,那你就会遇到数据库“断列链接”或“孤单记录”的风险。换句话说,数据的完整性会被破坏,你的数据库会含有不良数据,你的用户会很生气(或更糟)。 你从来不能肯定你的前台程序是更改数据库数据的唯一手段。那是太危险了。此外,你在已经建好的数据库上花费不必要及大量的时间和精力来生成逻辑。你在没有合理理由的情况下再发明轮子。 从来不存在“太多的”外键。 或者是业务需求需要的, 或者不需要。如果需要(例如,确保每个定单归属于一个已知的客户),那你必须实施它们。性能不是问题。不进行外键检查,你的查寻可能会快几微微秒,但如果数据库包含不良数据,你的用户会容忍这样的情况持续多久呢?比如在员工信息表中有部门的编号,部门的信息在另外一个表中,在部门信息表中这个部门编号必须是存在的或者为空,而不能是一个不存在的部门编号。这个就可以使用外键来限制员工信息表的部门编号的外键为部门信息表的部门编号,这样Oralce就可以自动完成员工信息表中的部门编号必须存在了。

什么是外键

  外键就是指另外表中的主键 。  保持数据一致性,完整性,主要目的是控制存储在外键表中的数据。 使两张表形成关联,外键只能引用外表中的列的值或使用空值。  使用原则:  1、 为关联字段创建外键。  2、 所有的键都必须唯一。  3、避免使用复合键。  4、外键总是关联唯一的键字段。

数据库中外键的概念及作用

外键的设计初衷是为了在数据库端保证对逻辑上相关联的表数据在操作上的一致性与完整性。

优点:

  • 精简关联数据,减少数据冗余

    避免后期对大量冗余处理的额外运维操作。

  • 降低应用代码复杂性,减少了额外的异常处理

    相关数据管理全由数据库端处理。

  • 增加文档的可读性

    特别是在表设计开始,绘制 ER 图的时候,逻辑简单明了,可读性非常强。

  • 缺点:

  • 性能压力

    外键一般会存在级联功能,级联更新,级联删除等等。在海量数据场景,造成很大的性能压力。比如插入一条新记录,如果插入记录的表有 10 个外键,那势必要对关联的 10 张表逐一检查插入的记录是否合理,延误了正常插入的记录时间。并且父表的更新会连带子表加上相关的锁。

  • 其他功能的灵活性不佳

    比如,表结构的更新等。

外键的作用

数据库中外键的作用。多多了解这方面的内容,对建立数据库影响还是相当大的,我们应该好好的学习他了解他才能更好的掌握的。外键 (FK) 是用于建立和加强两个表数据之间的链接的一列或多列。通过将保存表中主键值的一列或多列添加到另一个表中,可创建两个表之间的链接。这个列就成为第二个表的外键。 FOREIGN KEY 约束的主要目的是控制存储在外键表中的数据,但它还可以控制对主键表中数据的修改。例如,如果在 publishers 表中删除一个出版商,而这个出版商的 ID 在 titles 表中记录书的信息时使用了,则这两个表之间关联的完整性将被破坏,titles 表中该出版商的书籍因为与 publishers 表中的数据没有链接而变得孤立了。FOREIGN KEY 约束防止这种情况的发生。如果主键表中数据的更改使之与外键表中数据的链接失效,则这种更改是不能实现的,从而确保了引用完整性。如果试图删除主键表中的行或更改主键值,而该主键值与另一个表的 FOREIGN KEY 约束值相关,则该操作不可实现。若要成功更改或删除 FOREIGN KEY 约束的行,可以先在外键表中删除外键数据或更改外键数据,然后将外键链接到不同的主键数据上去。 外键只能引用外表中的列的值! 外键的作用: 保持数据一致性,完整性,主要目的是控制存储在外键表中的数据。 使两张表形成关联,就是当你对一个表的数据进行操作,和他有关联的一个或更多表的数据能够同时发生改变。 例如一: a b 两个表 a表中存有客户号,客户名称 b表中存有每个客户的订单 有了外键后 你只能在确信b 表中没有客户x的订单后,才可以在a表中删除客户x。例如二: 例如有两个表 A(a,b) :a为主键,b为外键(来自于B.b) B(b,c,d) :b为主键 如果我把字段b的外键属性去掉,对编程没什么影响。 如上面,A中的b要么为空,要么是在B的b中存在的值,有外键的时候,数据库会自动帮你检查A的b是否在B的b中存在。 1、外建表达的是参照完整性:这是数据固有的,与程序无关。因此,应该交给DBMS来做。 2、使用外建,简单直观,可以直接在数据模型中体现,无论是设计、维护等回有很大的好处,特别是对于分析现有的数据库的好处时非常明显的--前不久我分析了一个企业现有的数据库,里面的参照完整性约束有的是外键描述,有的是用触发器实现,感觉很明显。当然,文档里可能有,但是也可能不全,但是外键就非常明显和直观。 3、既然我们可以用触发器或程序完成的这个工作(指参照完整性约束),DBMS已经提供了手段,为什么我们要自己去做?而且我们做的应该说没有RDBMS做得好。实际上,早期的RDBMS并没有外键,现在都有了,我认为数据库厂商增加这个功能是有道理的。从这个角度来说,外键更方便。 4、关于方便,根据我带项目的情况来看,程序员确实有反映,主要是在调试时输入数据麻烦:如果数据可以违反参照完整性,那么就是说参照完整性本身就不对名誉业务冲突,此时也不应该用触发期货程序实现;否则,说明数据是错误的,根本就不应该进入数据库!而且,这也应该是测试系统的一个内容:阻止非法数据。实际上,前台程序应该对这种提交失败做出处理。数据是企业的而非程序的,储程序要尽量与数据分离,反之亦然。

什么是外键,它有什么功能

外键是相对于主键说的,是建立表之间 的联系的必须的前提。 比如:学生表 、学生成绩表一一对应是因为 他们都具有相同的字段:学号,把学生表作为主表,学号是他的主键,相对于主表来说,学生成绩的字段 学号就是学生表的外键。 没有外键,两个表就没办法建立联系啊!

什么是主键与外键?外键名词解释

本文编辑:admin
外键

更多文章:


celebrities是什么意思(阅读理解Ghostwriters are widely used by celebrities or public)

celebrities是什么意思(阅读理解Ghostwriters are widely used by celebrities or public)

本文目录阅读理解Ghostwriters are widely used by celebrities or publiccelebrity是什么意思ceiebrity是什么意思famous celebrities什么意思阅读理解Ghost

2025年3月16日 01:00

素材库app(图片素材库管理软件有什么推荐)

素材库app(图片素材库管理软件有什么推荐)

本文目录图片素材库管理软件有什么推荐有什么软件可以提供绘画素材不是素描,油画什么的,是漫画有那些可以找到绘画素材的手机软件制作视频有哪些免费的音乐素材软件图片素材库管理软件有什么推荐adobe公司出版的adobe bridge 图片管理工具

2025年2月24日 10:10

html网站首页代码(如何查找网站首页HTML代码<head></head>)

html网站首页代码(如何查找网站首页HTML代码<head></head>)

本文目录如何查找网站首页HTML代码HTML 做一个打开网页代码求一个html编出的简单网页首页代码网站首页html代码怎么修改,在哪里修改网站首页HTML代码在什么地方如何查找网站首页HTML代码先在浏览器里打开这个网站的首页,然后在页面

2025年2月20日 03:20

网站源码与SEO有什么关系?找网络公司、站长必备源码到哪里推荐一下

网站源码与SEO有什么关系?找网络公司、站长必备源码到哪里推荐一下

本文目录网站源码与SEO有什么关系找网络公司、站长必备源码到哪里推荐一下在网页查看源代码之后如何能在文件夹找到某个页面的代码是哪一个文件呢本人新站长有哪些比较好的源码网站从站长站中下载源码用于商用侵权吗网站源码与SEO有什么关系上海献峰 网

2025年2月26日 18:20

js混淆加密(js在网页刷新的时候改变是怎么弄的)

js混淆加密(js在网页刷新的时候改变是怎么弄的)

本文目录js在网页刷新的时候改变是怎么弄的前端JS都是用什么加密的js在网页刷新的时候改变是怎么弄的方式一:window.location.href=当前页;方式二:window.location.reload();方式三还可以用ajax方

2025年2月28日 11:00

of course的用法(关于Of course的使用场合~~)

of course的用法(关于Of course的使用场合~~)

本文目录关于Of course的使用场合~~of course与sure的不同of course;sure;certainly;without doubt;You bet;区别of course的用法 意思、等于什么 ,都写出来Of cou

2025年2月24日 02:00

tablelayout(VB.NET中如何向TableLayoutPanel控件指定行和列写数据)

tablelayout(VB.NET中如何向TableLayoutPanel控件指定行和列写数据)

本文目录VB.NET中如何向TableLayoutPanel控件指定行和列写数据tablelayout如何将表格置底VB.NET中如何向TableLayoutPanel控件指定行和列写数据SetCellPosition 设置表示单元格的行号

2025年3月24日 16:30

git通俗一点是干什么的(到底什么是ssh和git, 通俗的讲解下, 一定要通俗形象, 一下就明白, 不要扯太多专业术语,)

git通俗一点是干什么的(到底什么是ssh和git, 通俗的讲解下, 一定要通俗形象, 一下就明白, 不要扯太多专业术语,)

本文目录到底什么是ssh和git, 通俗的讲解下, 一定要通俗形象, 一下就明白, 不要扯太多专业术语,git是干什么用的,和dos一样不!请简单说明git有什么作用git是干嘛的(在哪方面会用到)git的工作原理git可以干什么到底什么是

2025年3月2日 15:40

阿根廷足球为什么越来越差?阿根廷是个怎样的国家

阿根廷足球为什么越来越差?阿根廷是个怎样的国家

本文目录阿根廷足球为什么越来越差阿根廷是个怎样的国家阿根廷与中国时差几个小时阿根廷时间跟中国时间相差多少阿根廷和中国时间会差多少阿根廷的时间和北京时间相差几小时阿根廷在哪,它的时间跟美国一样吗阿根廷足球为什么越来越差阿根廷队在全世界有一批忠

2025年2月27日 20:30

nonetheless是什么意思(nevertheless是什么意思)

nonetheless是什么意思(nevertheless是什么意思)

本文目录nevertheless是什么意思nonetheless什么意思nonetheless是什么意思nevertheless是什么意思  nevertheless    adv.不过;然而;仍然;尽管如此;  conj.然而;尽管如此;

2025年3月4日 23:50

constant手表(frederique constant geneve手表FREDERIQUECONSTANTGEN)

constant手表(frederique constant geneve手表FREDERIQUECONSTANTGEN)

本文目录frederique constant geneve手表FREDERIQUECONSTANTGEN康斯登表怎么样在瑞士这个牌子算不算有名气呢VACHERONCONSTANTN,是什么手表frederique constant gen

2025年2月13日 14:30

go下载电影网(哪里能在线看最新电影)

go下载电影网(哪里能在线看最新电影)

本文目录哪里能在线看最新电影有哪些能看vip电影的网站或公众号哪里能在线看最新电影一、Neets.cc--一款相见恨晚的在线视频观看网站。聚合全网搜索链接,电影、动漫、电视剧、综艺...不论是新出的电影还是最热的电视剧或者综艺,都可以在线观

2025年3月21日 20:20

证书验证失败(花生好车证书验证失败是什么意思)

证书验证失败(花生好车证书验证失败是什么意思)

本文目录花生好车证书验证失败是什么意思有知道中行企业网银UK证书认证失败怎么解决的吗农商银行网银在转账的时候,签名验签失败,获取证书失败是什么原因证书验证失败怎么回事安馨办证书验证失败咋办手机证书验证失败怎么解决鱼客登录时老是说证书验证失败

2025年2月13日 19:00

discuz二次开发(关于Discuz!NT二次开发)

discuz二次开发(关于Discuz!NT二次开发)

本文目录关于Discuz!NT二次开发怎么进行discuz的二次开发discuz和 phpwind 哪个二次开发起来更简单想学discuz二次开发都有什么过程关于Discuz二次开发,后续新补丁的升级问题关于Discuz!NT二次开发PHP

2025年2月13日 14:50

ln函数的运算法则是什么?ln的运算法则是什么

ln函数的运算法则是什么?ln的运算法则是什么

本文目录ln函数的运算法则是什么ln的运算法则是什么怎么在excel中使用ln函数ln的函数图像是ln函数公式ln是奇函数还是偶函数ln函数的图像ln函数是怎样的函数ln函数的性质是什么ln是一个什么函数ln函数的运算法则是什么ln函数的运

2025年2月23日 07:00

外星人源码网(说说你见过的最强大的代码是啥样的)

外星人源码网(说说你见过的最强大的代码是啥样的)

本文目录说说你见过的最强大的代码是啥样的如何购买APP源代码电影《源代码》的结局是什么意思Python从入门到实践里的《外星人入侵》说说你见过的最强大的代码是啥样的‍‍下面的代码摘自 K&R 1.5.4 word countering第一次

2025年3月7日 09:20

vboxmanage命令(打开cmd窗口,进入virtualbox目录,执行: C:\Program Files\Oracle\VirtualBox>VBoxManage setextradata)

vboxmanage命令(打开cmd窗口,进入virtualbox目录,执行: C:\Program Files\Oracle\VirtualBox>VBoxManage setextradata)

本文目录打开cmd窗口,进入virtualbox目录,执行: C:\Program Files\Oracle\VirtualBox>VBoxManage setextradatavboxmanage命令不能在CMD下运行,总是提示不是内部或

2025年3月13日 19:30

博客怎么推广(经验谈:个人博客该如何去推广)

博客怎么推广(经验谈:个人博客该如何去推广)

本文目录经验谈:个人博客该如何去推广如何推广自己的博客有哪些博客推广的方法和途径如何有效的做博客推广博客如何推广博客营销技巧有哪些博客怎么推广:博客营销怎么做有什么博客推广的方法和途径博客推广方式有哪些博客推广的流程是怎么样的经验谈:个人博

2025年2月22日 16:10

remarkable的名词(“卓越”的英文单词是什么)

remarkable的名词(“卓越”的英文单词是什么)

本文目录“卓越”的英文单词是什么wonderful中文是什么意思Germang,capacity,paper.,remarkable怎么划音节outstanding和excellence的区别3英语题怎么做anything special

2025年2月25日 05:40

prosperous名词(名词繁华用英语怎么说啊)

prosperous名词(名词繁华用英语怎么说啊)

本文目录名词繁华用英语怎么说啊繁华用英语怎么说properous和prosperous区别名词繁华用英语怎么说啊flourish自身可以做名词:n.(名词)1. A dramatic or stylish movement, as of w

2025年4月1日 12:10

近期文章

本站热文

harbor,port,pier的区别?谁能解释“harbour“(港口)与“pier“(码头)的区别
2025-02-22 17:40:03 浏览:18
ibatis foreach(ibatis 批量update操作)
2025-02-10 23:40:06 浏览:7
endless rain(endless rain表达什么情感)
2025-02-14 06:00:02 浏览:6
标签列表

热门搜索