主键和外键的区别?

主键和外键的区别?
这是IBM的JAVA面试题目,哪位高人帮帮忙啊!谢谢!

主键是定义一个表中起主要作用的数据项,这些数据项的数据在表中是唯一的,同时系统按主键为表建立索引。\x0d\x0a\x0d\x0a外键是定义一个表中的某数据项的数据,要参照另一个表的主键数据。既没有在另一个表的主键数据中出现的数据,不允许在这个表的外键数据项中出现。\x0d\x0a\x0d\x0a主键:表中记录的唯一标识\x0d\x0a\x0d\x0a外键:依赖于别的表的数据\x0d\x0a\x0d\x0a唯一键:在表中唯一\x0d\x0a\x0d\x0a键是一个或多个字段的组合\x0d\x0a\x0d\x0a唯一键:可以确定一条记录的字段(或字段组合),一张表可以有多个唯一键,正如可以识别你的身份的可以是身份证,学生证,军人证\x0d\x0a\x0d\x0a主键:你把唯一键的一个选做主键,一张表只能有一个主键\x0d\x0a\x0d\x0a外键:所定义的外键是另一张表的主键,\x0d\x0a\x0d\x0a主键:表中记录的唯一标识,外键:依赖于别的表的数据,唯一键:在表中唯一。\x0d\x0a\x0d\x0a主键和唯一键的一个区别:主键是不允许为NULL的,唯一键则可以,当然你可以加上NOT NULL来限制它\x0d\x0a\x0d\x0a主键:能够唯一表示数据表中的每个记录的字段或者字段的组合就称为主键。一个主键是唯一识别一个表的每一行记录,但这只是其作用的一疗分,主键的主要作用是将记录和存放在其他表中的数据进行关联,在这一点上,主键是不同表中各记录间的简单指针,主键约整就是确定表中的每一条记录,主键不能是空值,唯一约束是用于指定一个或多个列的组合值具有唯一性,以防止在列中输入重复的值,所以,主键的值对用户而言是没有什么意义,并且和它赋予的值也没有什么特别联系。\x0d\x0a\x0d\x0a外键:\x0d\x0a\x0d\x0a若有两个表A,B,C是A的主键,而B中也有C字段,则C就是表B的外键,外键约束主要用来维护两个表之间数据的一致性。\x0d\x0a\x0d\x0aA为基本表,B为信息表。\x0d\x0a\x0d\x0a在数据库中,常常不只是一个表,这些表之间也不是相互独立的,不同的表之间需要建立一种关系,才能将它们的数据相互沟通,而在这个沟通过程中,就需要表中有一个字段作为标志,不同的记录对应的字段取值不能相同,也不能是空白的,通过这个字段中不同的值可以区别各条记录,就像我们区别不同的人,每个人都有名字,但它却不能作为主键,因为人名很容易出现重复,而身份证号是每个人都不同的,所以可以根据它来区别不同的人,数据库的表中作为主键的段段就要像人的身份证号一样,必须是每个记录的值都不同,这才能根据主键的值来确定不同的记录。\x0d\x0a\x0d\x0a什么是外键?\x0d\x0a\x0d\x0a说明你的表A中的某项a,是引用表B的某列b\x0d\x0a\x0d\x0a为什么要使用外键?\x0d\x0aRDBMS的基本概念,可以维护数据库的完整。\x0d\x0a\x0d\x0a如何来用,涉及到数据库的定义。\x0d\x0a\x0d\x0a唯一约束和主键的区别是什么?\x0d\x0a\x0d\x0a唯一性约束\x0d\x0a\x0d\x0a唯一性约束所在的列允许空值,但是主键约束的列不允空值。\x0d\x0a\x0d\x0a可以把唯一约束放在一个或者多个列上,但是,唯一性约束所在的列并不是表的主键列。\x0d\x0a\x0d\x0a唯一性约束强制在指定的列上创建一个唯一性索引,在默认情况下,创建唯一性的非聚簇索引,但是,也可以指定所创建的索引是聚簇索引。\x0d\x0a\x0d\x0a主键:\x0d\x0a\x0d\x0a用于标识某行而且与之相关\x0d\x0a\x0d\x0a是不可能更新\x0d\x0a\x0d\x0a不应该允许空\x0d\x0a\x0d\x0a唯一域/字段\x0d\x0a\x0d\x0a用于作为访问某行的可选手段。\x0d\x0a\x0d\x0a只要唯一就可以更新\x0d\x0a\x0d\x0a可以为空\x0d\x0a\x0d\x0a注意唯一和主键的区别,它们都是创建一个唯一的索引,一个表格仅含有一个主键约束列,但是,它有可能在其他列中含有许多的唯一约束。
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2016-06-25
主键是确定数据库中的表的记录的唯一标识字段,可以是表中的一个字段,也可以是表中的多个字段组成的。一旦确定为主键,则该字段不可为空也不可以重复。比如学生表中的学号就可以定义成该表的字段
外键的定义是相对于主键而言的,比如另有一张成绩表,表中也出现了学生表中的对应学号字段,则相对于学生表,学号就是成绩表的外键本回答被提问者采纳
第2个回答  2006-10-17
主键在本表中是唯一的、不可唯空的,外键可以重复可以唯空;外键和另一张表的主键关联,不能创建对应表中不存在的外键。
第3个回答  2020-03-02

主键和外键有什么不同?
1、主关键字(主键,primary key)是被挑选出来,作表的行的惟一标识的候选关键字。一个表只有一个主关键字。主关键字又可以称为主键。 主键可以由一个字段,也可以由多个字段组成,分别成为单字段主键或多字段主键。2、外键:如果公共关键字在一个关系中是主关键字,那么这个公共关键字被称为另一个...

什么是主键,什么是外键
主键是数据库表中用于唯一标识每条记录的字段,而外键是一个表中的字段,其值引用了另一个表的主键值,用于建立两个表之间的关联关系。主键详解:主键在数据库设计中占据核心地位,它确保了表中数据的唯一性。一个表只能有一个主键,这个主键可以由单个字段组成,也可以是多个字段的组合,后者通常被称为...

什么是主键和外键?
一、作用不同 1、主关键字:用来在一个表中引用来自于另一个表中的特定记录。是一种唯一关键字,表定义的一部分。2、外关键字:公共关键字在一个关系中是主关键字,那么这个公共关键字被称为另一个关系的外关键字。二、组成不同 1、主关键字:主键可以由多个关键字共同组成,并且主关键字的列不...

数据库的主键和外键
主键与外键的区别:1、在定义上:主键是唯一标识一条记录,不能有重复的,不允许为空;外键可以有重复的,可以是空值;2、在作用上:主键主要用于保证数据完整性;外键主要用于和其他表建立联系;3、在个数上:主键只能有一个;一个表可以有多个外键。

什么是主键与外键
主键,是数据库中至关重要的概念,它为表中的每一行数据提供了独一无二的标识。一个表只能拥有一个主键,它可以由单个字段构成,称为单字段主键,或者由多个字段联合构成,被称为多字段主键,确保数据的唯一性。另一方面,外键则扮演了连接两个表的桥梁角色。当一个关系中的字段与另一个关系的主键相...

什么是关系型数据库,主键,外键,索引分别是什么?
1、关系型数据库,是指采用了关系模型来组织数据的数据库,其以行和列的形式存储数据,关系型数据库这一系列的行和列被称为表,一组表组成了数据库。2、主关键字(primary key)是表中的一个或多个字段,它的值用于唯一的标识表中的某一条记录 3、外键表示了两个关系之间的相关联系。以另一个关系...

主键和外键
3. 主键和外键的差别:主键和外键在数据库中都起到了重要的角色,但它们的功能和用途有所不同。主键用于唯一标识表中的记录,确保数据的唯一性;而外键则用于建立表之间的关联,确保数据的引用完整性。此外,每个表只能有一个主键,但可以有多个外键。总结来说,主键和外键都是数据库完整性约束的重要...

主键和外键 什么叫主键和外键
主键,简单来说,就是用来标识表中每一行数据唯一标识符的候选字段,它可以是一个字段,也可以是多个字段的组合,无论是单字段主键还是多字段主键,都是为了确保数据的唯一性。主键通常被称为主键或主码,它确保了表中每一行数据的唯一性,就如同实体的身份证号,能够明确区分不同的数据记录。而外键,...

主键和外键有什么区别呢
在数据库设计中,主键和外键是两个关键的概念,它们各自承担着不同的职责。主键,简单来说,是表中用于唯一标识每一行记录的字段或字段组合,它确保了数据的唯一性,并且不允许为空值。主键的存在使得数据表之间能够通过关联,形成一种数据关系的桥梁。例如,一张学生表的"学号"可以作为主键,确保每个学生...

主键和外键的区别?
外键则有所不同,它定义了一个表中的数据,是基于另一个表的主键。外键的目的是建立表与表之间的关联,确保数据的一致性。当一个表的外键引用另一个表的主键时,不允许出现该主键值在另一表中不存在的情况。外键并非表中唯一的标识,但它确保了数据的引用完整性。主键与唯一键之间存在微妙的区别:...

相似回答