问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

sqlserver外键关系有什么用?

发布网友 发布时间:2022-04-22 04:35

我来回答

4个回答

热心网友 时间:2022-04-08 23:49

  SQL的主键和外键的作用:

  外键取值规则:空值或参照的主键值。

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

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

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

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

  简而言之,SQL的主键和外键就是起约束作用。

  主键是能确定一条记录的唯一标识,比如,一条记录包括身份正号,姓名,年龄。身份证号是唯一能确定你这个人的,其他都可能有重复,所以,身份证号是主键。

  外键用于与另一张表的关联。是能确定另一张表记录的字段,用于保持数据的一致性。比如,A表中的一个字段,是B表的主键,那他就可以是A表的外键。

热心网友 时间:2022-04-09 01:07

外键就是避免外键表与主键表上的主键字段数据有差异。
举个例子,你现在有一个主表tab_h,主键t_id,外键表tab_d,t_id是tab_h的t_id外键。那么你就不能先insert tab_d 或者delete tab_d,因我t_id在tab_h中没有值。这样就违反了外键约束。
当然了,避免这个麻烦,就需要代码写的规范,无论如何,要先对主表做insert ,delete(update 无所谓,但不能修改t_id为tab_h中没有的值)。

内连接就是两个表,通过1个字段连接起来,必须两个表里都有的值才能被连接。外连接就是把两个表全部连接,即使没有的值用null会表示出来。比如
tab1 tab2
t_id t_name t_id t_name
1 a 1 a
2 b 3 e
4 d 4 d
select * from tab1 a join tab2 b on a.t_id=b.t_id ---内连接
t_id t_name t_id t_name
1 a 1 a
4 d 4 d
select * from tab1 a full join tab2 b on a.t_id=b.t_id ---外连接
t_id t_name t_id t_name
1 a 1 a
2 b
3 e
4 d 4 d

热心网友 时间:2022-04-09 02:41

主要用於数据约束.
部门表:部门ID(主键),部门名称
员工表:部门ID(外键),员工工号,员工姓名

外键作用是:员工表的部门ID(外键)必须存在於部门表的部门ID(主键),但也可为空.

内连接:select * from 员工表 inner join 部门表 on 部门ID(外键)=部门ID(主键)
显示数据:
1.员工所属的部门必须存在
2.部门里必须有员工

左外连接select * from 员工表 left join 部门表 on 部门ID(外键)=部门ID(主键)
显示数据:
1.所有员工都显示,部门不存在显示为空.

热心网友 时间:2022-04-09 04:33

外键啊,昨天刚讲过,嘿嘿出来献丑了
举个例子吧,
a表 里面有ID user pwd permission
b表里面有 Pid permission
permission是权限的意思 假设pid是外键 那a 表里的permission怎么查呢 ,要靠B表查 那这就是外键的作用,我理解吧就是2张表里,b表里有a表里想要得到的东西
,他们之间的联系要靠外键来实现
内连接是只显示满足条件的
select*from a inner join b on a .permission =b.Pid(就是刚说的实现)
完了
外连接
select * from a full join b on a.ID = b.Pid
(我这个够通俗了吧 呼呼 全大白话看不懂哥不依)
在来修改下,举个例子,你和你媳妇舌吻, 那内连接就是取交集 ,舌头纠缠在一起的地方- -!
外连接就是取所有
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
油烟机价格多少钱一台 为什么真正懂房子的人只买二手房 来看看行家怎么做 二手房怎样看风水好不好?怎样看二手房子风水好坏?买二手房子怎么看风水... awm由哪几个英语组词 【急】英语组词成句5道,求英语高手帮解 我想去苏州打工,我对苏州一点都不了解,请问我该不该去 在苏州一家餐厅打工,每晚都超过规定时间下班,不想继续干了,离职能拿... 上海哪里可以摆地摊卖盒饭 高星级酒店做盒饭说明什么 谁能帮我分析一下:一份六块钱的盒饭有多少利润? sqlserver外键关系有什么用? 公司转让协议书格式范本 公司债务转让协议书怎么写呢 ftp上传用工具登录时经常连不上 请问怎么登入自己网站的FTP后台? 临沂有好玩的地方吗 ftp如何从网页登陆? 哪款ftp软件可以基于密匙登陆 临沂有哪些好玩儿的地方 临沂市有哪些著名的旅游景点? 公司股权转让协议如何写 FTP如何远程登录啊? 光圆钢筋用哪个标准 哪种FTP工具可以强大到每次连接时自动对比远程和本... 临沂好玩的景区有哪些?求分享 请问有没有什么软件可以直接登入FTP下载某某文件夹? 热轧光圆钢筋是什么 临沂市有什么好玩儿的地方? FTP 连接工具 简述数码摄像机的有哪五大部分组成及各组成部分的... 请问SQLserver中的主键和外键的作用 SQLSERVER外键约束 聚氨酯发泡胶主要原料是什么? sqlserver 如何用sql修改外键 发泡材料是什么? 怎样去除书放了一段时间后的墨水臭味 sql server怎样删除外键约束? SQLserver的主键、外键……等五大键的作用和区别? 去掉书的油墨味,有什么好办法? 水泥发泡剂都用那些材料? sqlserver怎么删除有外键关联的数据? 被酒驾的人撞了车要求怎么赔偿 现场包装发泡剂是什么材料 如何去除墨汁臭味? 菜鸟网络再秀成绩单 大数据之路还有三道坎 sqlserver数据库主外键问题 你好我醉驾剐蹭对方车没有人员伤亡对方赔偿费太高... 请问生产泡沫最主要的材料是什么? 各位大侠,在SQL Server中如何设置外键? - MS-SQL... 我醉驾130撞对方车了我主责对方不给谅解书会判缓刑...