谁能给我解释一下视图?

pittzhao 2003-08-26 10:00:53
还有主键~

谢谢了~~
...全文
93 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
sdhdy 2003-08-26
  • 打赏
  • 举报
回复
视图把多个表的数据联合在一起
主键:确定字段的唯一性,主键字段不能重复
happydreamer 2003-08-26
  • 打赏
  • 举报
回复
SQL 视图
视图可以被看成是虚拟表或存储查询。可通过视图访问的数据不作为独特的对象存储在数据库内。数据库内存储的是 SELECT 语句。SELECT 语句的结果集构成视图所返回的虚拟表。用户可以用引用表时所使用的方法,在 Transact-SQL 语句中通过引用视图名称来使用虚拟表。使用视图可以实现下列任一或所有功能:

将用户限定在表中的特定行上。
例如,只允许雇员看见工作跟踪表内记录其工作的行。

将用户限定在特定列上。
例如,对于那些不负责处理工资单的雇员,只允许他们看见雇员表中的姓名列、办公室列、工作电话列和部门列,而不能看见任何包含工资信息或个人信息的列。

将多个表中的列联接起来,使它们看起来象一个表。


聚合信息而非提供详细信息。
例如,显示一个列的和,或列的最大值和最小值。
hjb111 2003-08-26
  • 打赏
  • 举报
回复
视图就是一张虚表,在物理上不存在,但在逻辑上存在!
pengdali 2003-08-26
  • 打赏
  • 举报
回复
查询和视图的比较
由于查询和视图有如此多的相似性,所以很容易忽略它们之间的差异。本节对查询和视图做一个简单的比较。

存储 视图存储为数据库设计的一部分,而查询则不是。当设计数据库时,可以出于下列原因将视图包括在设计中:

一些数据子集关系到许多用户。由于每个视图都存储在数据库内,所以视图建立特定的数据子集以供任何数据库用户使用。


视图可以隐藏基表。可以禁止所有用户访问数据库表,而要求用户只能通过视图操作数据。这种方法可以保护用户和应用程序不受某些数据库修改的影响。例如,如果可以创建一个名为"本月销售额"的视图。在每月的第一天,可以相应地修改视图的定义。如果没有这个视图,用户每月都必须重新编写查询以选择相应月份的销售额。
更新结果 对视图和查询的结果集更新限制是不同的。有关更多信息,请参见结果更新规则。

排序结果 可以排序任何查询结果,但是只有当视图包括 TOP 子句时才能排序视图。有关 TOP 子句的更多信息,请参见使用 TOP 和 PERCENT 限制结果集。

生成查询计划 查询计划是内部策略,通过它数据库服务器尝试快速创建结果集。数据库服务器可以在保存视图后立即为视图建立查询计划。但是对于查询,数据库服务器直到查询实际运行时才能建立查询计划——也就是说,直到用户显式请求结果集时。

参数设置 可以为查询创建参数,但不能为视图创建参数。有关参数化查询的更多信息,请参见创建通用查询。

加密 可以加密视图,但不能加密查询。有关更多信息,请参见加密视图。

z5wjz 2003-08-26
  • 打赏
  • 举报
回复
打个比方:假如你在黑板上画了一张表(如工资表),这张表允许所有人看到,但是在这张表上有一些列你不想让所有人看到,比如奖金列,怎么办呢,你可以在黑板上糊上一张白纸,把除了奖金列和不想让人看的列之外的列的地方,全都抠个窟窿,这样别人再看数据时只会看到该看的东西.呵呵,这张抠了窟窿的白纸就是视图,说白了,就是建立在基表上一个罩,但是你可以授权其他用户能够访问该视图,而去拒绝用户对基表的访问权限,此时用户仍然可以通过视图看到数据.
lynx1111 2003-08-26
  • 打赏
  • 举报
回复
加密 可以加密视图,但不能加密查询。有关更多信息,请参见加密视图。






怎么加密视图?
pittzhao 2003-08-26
  • 打赏
  • 举报
回复
谢谢各位

34,575

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧