SQLserver中的视图与主外键的创建
一.背景
原来学过数据库的相关内容,只是形式上的,从来也没有实践过,徐徐飘过而已,如今在做机房时,很多知识需要用到视图,才开始去慢慢的实践。
视图:我理解的就是一张表,它把我们所需要的某个表或某几个表中的部分信息提取出来,形成了一张临时的表。
它主要有两个优点:1.简单,它呈现给我们的数据就是我们想要的数据,没有多余的。
2.安全,提供给用户它们权限范围内的数据
我为什么会用到视图?举一个简单的例子,在查询用户信息时,我们可能会用到两张表中的内容。那么这个时候我就需要将两张表中我需要的数据提取出来形成一张虚拟的表,当我使用的时候,我就可以直接从这张虚拟的表中看到我想要看的数据。这张虚拟的表就是视图。
二、实战
但是这次做的时候遇到一些小问题,如果在一张表中每个数据记录只有一条,而另一张表中相应的数据却对应者多条,此时如果直接建视图,得到的结果会出现很多重复。
如何解决呢?
当然是利用主键和外键来进行约束。这样在视图中会自动归纳相应的数据记录。在外键表中存在的记录会自动与主键表中的匹配
三、外键的创建
在添加的表上右击关系:
点击表和列规范,设定主键表和外键表的列名
这里必须要设置好,上面表中标出的“Insert和Update规范”中的几种规范。
刚开始我选的是不执行任何操作,但是当我删除主键表中的记录时,就会报错,因为外键表中依赖的记录消失了,那么就不存在这个外键值了,所以外键表中的记录
也必须删除,所以当涉及到删除操作时,我们应该选择“级联”,也就是外键表中的数据随着主键表的更新而更新。
具体设置如下:选择自己想要设置的列名即可
这样两张表的主键外键关系就大致建好了
四、视图的创建
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。