A. 数据库中的外键是什么意思
外键(FK)是用于建立和加强两个表数据之间的链接的一列或多列。通过将保存表中主键值的一列或多列添加到另一个表中,可创建两个表之间的链接。这个列就成为第二个表的外键。
当创建或更改表时可通过定义FOREIGNKEY约束来创建外键。
例如,数据库pubs中的titles表与publishers表有链接,因为在书名和出版商之间存在逻辑联系。
titles表中的pub_id列与publishers表中的主键列相对应。titles表中的pub_id列是到publishers表的外键。
(1)数据库中超键什么意思扩展阅读:
保持数据一致性,完整性,主要目的是控制存储在外键表中的数据。 使两张表形成关联,外键只能引用外表中的列的值或使用空值。
学号在成绩表(表2)中是主键,在学生表(表1)中是外键。如果不使用外键,表1的学号字段插了一个值(比如20140999999),但是这个值在表2中并没有,这个时候,数据库允许插入,并不会对插入的数据做关系检查。
然而在设置外键的情况下,插入表1学号字段的值必须要求在表1的学号字段能找到。 同时,如果要删除表2的某个学号字段,必须保证表2中没有引用该字段值的列,否则就没法删除。
这就是所谓的保持数据的一致性和完整性。如右图,如果表1还引用表2的某个学号,却把表1中的这个学号删了,表2就不知道这个学号对应的学生是哪个学生。
B. 数据库中超键和候选键分别是什么能不能举个例子!
超键(super key):在关系中能唯一标识元组的属性集称为关系模式的超键
候选键(candidate key):不含有多余属性的超键称为候选键
C. 数据库键的含义
关键字(Key)
关键字是关系模型中的一个重要概念,它是逻辑结构,不是数据库的物理部分。
候选关键字(Candidate Key)
如果一个属性集能惟一地标识表的一行而又不含多余的属性,那么这个属性集称为候选关键字。
主关键字(Primary Key)
主关键字是被挑选出来,作表的行的惟一标识的侯选关键字。一个表只有一个主关键字。主关键字又可以称为主键。
公共关键字(Common Key)
在关系数据库中,关系之间的联系是通过相容或相同的属性或属性组来表示的。如果两个关系中具有相容或相同的属性或属性组,那么这个属性或属性组被称为这两个关系的公共关键字。
如有一个表,字段为:
id firstname lastname address phone IDcard
那么id或IDcard或firstname+lastname都可以说是关键字。
其中id为主关键字,IDcard和firstname+lastname为候选关键字
外关键字(Foreign Key)
如果公共关键字在一个关系中是主关键字,那么这个公共关键字被称为另一个关系的外关键字。由此可见,外关键字表示了两个关系之间的联系。以另一个关系的外关键字作主关键字的表被称为主表,具有此外关键字的表被称为主表的从表。外关键字又称作外键。
表A:id firstname lastname address classid
表B:classid classname
classid是表B的主键,在表A中有一个字段和表B中的classid关联,所以,classid 是表B的外键
D. 数据库中,什么是超关键字,候选关键字,主关键字麻烦举例说明
1、主关键字:主关键字(primary key)是表中的一个或多个字段,它的值用于唯一的标识表中的某一条记录。主关键字又可以称为主键。 主键可以由一个字段,也可以由多个字段组成,分别称为单字段主键或多字段主键。并且它可以唯一确定表中的一行数据,或者可以唯一确定一个实体。
2、超关键字:二维表中,能够惟一确定记录的一个字段或几个字段的组合被称为“超关键字”。“超关键字”虽然能唯一确定记录,但是它所包含的字段可能是有多余的。
3、候选关键字:如果一个超关键字去掉其中任何一个字段后不再能唯一地确定记录,则称它为“候选关键字”(Candidate Key)。
(4)数据库中超键什么意思扩展阅读:
建立主关键字(主键)应该遵循的原则 :
1、主键应当是对用户没有意义的。如果用户看到了一个表示多对多关系的连接表中的数据,并抱怨它没有什么用处,那就证明它的主键设计地很好。
2、永远也不要更新主键。实际上,因为主键除了唯一地标识一行之外,再没有其他的用途了,所以也就没有理由去对它更新。如果主键需要更新,则说明主键应对用户无意义的原则被违反了。 注:这项原则对于那些经常需要在数据转换或多数据库合并时进行数据整理的数据并不适用。
3、主键不应包含动态变化的数据,如时间戳、创建时间列、修改时间列等。
4、主键应当由计算机自动生成。如果由人来对主键的创建进行干预,就会使它带有除了唯一标识一行以外的意义。一旦越过这个界限,就可能产生人为修改主键的动机,这样,这种系统用来链接记录行、管理记录行的关键手段就会落入不了解数据库设计的人的手中。
E. 请问数据库中的主键和外键是什么意思
主键(Primary
key):
也称为主码或主关键字,用于惟一地确定一个元组的属性或属性组(复合主码)。每个关系都有一个并且只有一个主码。
外键(Foreign
Key):也称为外码或外部关键字。如果一个属性集不是所在关系的关键字,但是是其他关系的关键字,则该属性集称为外部关键字。在关系数据库中可以通过外键使两个关系关联,这种联系通常是一对多(1:n)的,其中主(父)关系(1方)称为被参照关系,从(子)关系(n方)称为参照关系。
F. 数据库中键的定义和作用
生活中每个人都有自己的特征,用于区别其他人,比如姓名,身份证号,因为姓名可能有重复,区分每个人的时候都使用身份证号,比如办银行卡需要对应本人的身份证号,这样可以把银行卡跟人关联起来。
数据库中的数据(表示某个事物或对象)也是同样,为了区分数据,类似人的身份证号,为数据定义一个键,跟身份证号一样,这个键作用多多:比如可以确定这个数据跟其他数据是不一样的,另外通过键可以跟其他类型数据关联起来,用于其他复杂用途比如复杂查询等
G. 数据库中超码的概念
超码是一个属性或一组属性的集合
这个超码必须要能区分唯一实体
比如: 学生数据库的身份证号,学号,
H. 在数据库中,什么是主关键字,超关键字,候选关键字,合成关键字,外部关键字它们的定义分别是什么
事实上,关系模型不允许表格包含有重复记录。所以,一个表格里字段或者列的值必须是唯一的。唯一性可以通过检查key(关键字)来确定,关键字可以由一个单列或者列的组合构成,这样的列叫做composite key(复合关键字)。
关键字有很多不同的类型:
超关键字(Super key):唯一辨别表格里记录的一个列或者一组列。
备选关键字(Candidate key):包含有确定唯一性所需要的最少列的超关键字。
主关键字(Primary key):用来唯一辨别表格里记录的备选关键字。
备用关键字(Alternate key):没有被选为主关键字的备选键。
外来关键字(Foreign key):表格内匹配同一表格或者另一表格里备选关键字的一个列或者一组列。外来键允许你将一个表格里的记录和另一个表格里的数据相关联。
这里列出来的关键字的类型并不是相互排斥的;一个关键字可以同时被归入多个类。从定义上说,每个表格必须至少有一个主关键字。
I. 数据库里面的主键和外键及候选键是什么意思啊
1、主键(primary key)吧:一张表(关系)的一个列(属性)或多个列可以作为主键,但是前提是让这个列作主键,这个列就能保证该列下的各个行(元组)的值不能相同,比如说用姓名属性作主键的话,那么这个主键就不一定可以,如果有两个人是同样的名字的话,就不能做到该属性下的各个元组数据的值不同,如果用阿拉伯数字作主键就是一个很好的选择。
2、外键(foreign key):一张表(关系)的列(属性)它同时存在表1和表2中,它不是表1的主键,而是表2的主键,就可以说他是表1的外键。
3、候选键(Candidate Key):能唯一标识表(关系)中行(元组)的列(属性),则称该属性为候选键,也称 候选关键字 或 候选码;由此来看候选键可以不只一个,还看一看得出的就是主键同时它也是候选键。