SQLserver中的视图与主外键的创建
2014-08-12 16:54
211 查看
一.背景
原来学过数据库的相关内容,只是形式上的,从来也没有实践过,徐徐飘过而已,如今在做机房时,很多知识需要用到视图,才开始去慢慢的实践。视图:我理解的就是一张表,它把我们所需要的某个表或某几个表中的部分信息提取出来,形成了一张临时的表。
它主要有两个优点:1.简单,它呈现给我们的数据就是我们想要的数据,没有多余的。
2.安全,提供给用户它们权限范围内的数据
我为什么会用到视图?举一个简单的例子,在查询用户信息时,我们可能会用到两张表中的内容。那么这个时候我就需要将两张表中我需要的数据提取出来形成一张虚拟的表,当我使用的时候,我就可以直接从这张虚拟的表中看到我想要看的数据。这张虚拟的表就是视图。
二、实战
但是这次做的时候遇到一些小问题,如果在一张表中每个数据记录只有一条,而另一张表中相应的数据却对应者多条,此时如果直接建视图,得到的结果会出现很多重复。如何解决呢?
当然是利用主键和外键来进行约束。这样在视图中会自动归纳相应的数据记录。在外键表中存在的记录会自动与主键表中的匹配
三、外键的创建
右击数据库关系图:在添加的表上右击关系:
点击表和列规范,设定主键表和外键表的列名
这里必须要设置好,上面表中标出的“Insert和Update规范”中的几种规范。刚开始我选的是不执行任何操作,但是当我删除主键表中的记录时,就会报错,因为外键表中依赖的记录消失了,那么就不存在这个外键值了,所以外键表中的记录也必须删除,所以当涉及到删除操作时,我们应该选择“级联”,也就是外键表中的数据随着主键表的更新而更新。
具体设置如下:选择自己想要设置的列名即可
这样两张表的主键外键关系就大致建好了
四、视图的创建
视图的创建应该是比较容易的,只要在视图下选择新建,选择自己想要的列名即可。在机房中使用视图时,我们应该注意的几点,我们会将视图看做一张表,所以在编写代码时,会新建一个实体类,来存放我们所需要的列数据。在D层查询表时,直接查询我们所创建的视图名称即可,一般以V_开头。
以上是关于视图和主外键使用的一些相关操作,通过重构巩固了以前学过的知识,对SQL server中的知识又多了几分了解。
相关文章推荐
- SQLServer创建视图
- sqlserver 2005中外键的创建和删除
- sqlserver 基础(增、删、改、查、链表查询、建立聚焦索引、主键、创建约束、创建外键)、触发器、存储过程
- SQLServer--使用T-SQL语句创建视图、删除视图、查看视图
- 无法对视图创建索引,因为该视图未绑定到架构 SQLServer
- 在SQLSERVER中创建视图的一些注意事项
- sqlserver查询所有表名、字段名、类型、长度和存储过程、视图的创建语句
- sqlserver 创建月表视图过程
- sqlserver 创建用户只能访问指定视图
- SQL 一个表中的两个外键来自于同一个表创建的视图
- (已解决)使用pl/sql的视图模式来创建sqlserver的dblink提示无法连接到“sa”
- SqlServer在视图上创建索引的条件
- SQLServer创建用户、数据库、表、约束、存储过程、视图
- SqlServer在视图上创建索引的条件
- 创建数据库、表、主外键、各种约束、存储过程、视图、索引、事务使用、触发器、创建登录账号、数据库用户 Sql语句示例
- 【整理】SqlServer在视图上创建索引的条件
- SQLserver 在存储过程中创建函数,创建视图
- sqlserver 创建用户仅仅能訪问指定视图
- SQLServer--视图的创建与使用
- SQLserver创建与主外键的看法