主键和外键的区别?

主键和外键的区别?... 主键和外键的区别? 展开
 我来答
惠企百科
2022-12-01 · 百度认证:北京惠企网络技术有限公司官方账号
惠企百科
惠企百科网是一家科普类综合网站,关注热门中文知识,集聚互联网精华中文知识,本着自由开放、分享价值的基本原则,向广大网友提供专业的中文知识平台。
向TA提问
展开全部
主键是定义一个表中起主要作用的数据项,这些数据项的数据在表中是唯一的,同时系统按主键为表建立索引。\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注意唯一和主键的区别,它们都是创建一个唯一的索引,一个表格仅含有一个主键约束列,但是,它有可能在其他列中含有许多的唯一约束。
x403879785
2012-03-12 · TA获得超过3839个赞
知道大有可为答主
回答量:1299
采纳率:100%
帮助的人:1173万
展开全部
主键Primary key 数据库实体完整性的一种规则,唯一标示一个实体,取值非空唯一。比如,学生表的学号。
外键 Foreign key 数据库参照完整性的一种规则,将两表或者多张表联系起来,取值必须来自参照表的参照字段的值,可为空也可不为空。比如,选课表里的学号。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
day忘不掉的痛
2015-09-21 · 知道合伙人数码行家
day忘不掉的痛
知道合伙人数码行家
采纳数:62646 获赞数:223941
本人担任公司网络部总经理多年,有充足的网络经验、互联网相关知识和资讯。

向TA提问 私信TA
展开全部
关系型数据库中的一条记录中有若干个属性,若其中某一个属性组(注意是组)能唯一标识一条记录,该属性组就可以成为一个主键比如 :
学生表(学号,姓名,性别,班级)
其中每个学生的学号是唯一的,学号就是一个主键
用户表(用户名、密码、登录级别)
其中用户名是唯一的, 用户名就是一个主键
上机记录表(卡号,学号,姓名、序列号)
上机记录表中单一一个属性无法唯一标识一条记录,学号和姓名的组合才可以唯一标识一条记录,所以 学号和姓名的属性组是一个主键
上机记录表中的序列号不是成绩表的主键,但它和学生表中的学号相对应,并且学生表中的学号是学生表的主键,则称成绩表中的学号是学生表的外键
定义主键和外键主要是为了维护关系数据库的完整性,总结一下:
主键是能确定一条记录的唯一标识,比如,一条记录包括身份证号,姓名,年龄。身份证号是唯一能确定这个人的,其它都可能有重复,所以,身份证号是主键。
外键用于与另一张表的关联。是能确定另一张表记录的字段,用于保持数据的一致性。比如,A表中的一个字段,是B表的主键,就可以是A表的外键。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
帐号已注销
2020-03-02 · TA获得超过1.6万个赞
知道答主
回答量:11.7万
采纳率:4%
帮助的人:6269万
展开全部
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式