sqlserver中视图的作用是什么?

如题所述

SQL的视图是从基本表和视图中导出的。

SQL具有数据定义、数据操纵和数据控制。

1、SQL数据定义功能:能够定义数据库的三级模式结构,即外模式、全局模式和内模式结构。在SQL中,外模式有叫做视图(View),全局模式简称模式( Schema),内模式由系统根据数据库模式自动实现,一般无需用户过问。 

2、SQL数据操纵功能:包括对基本表和视图的数据插入、删除和修改,特别是具有很强的数据查询功能。 

3、SQL的数据控制功能:主要是对用户的访问权限加以控制,以保证系统的安全性。



扩展资料

优点

1、视图着重于特定数据。

视图可以让用户或者程序开发人员只看到所需要的数据,而不需要把表中的所有信息与字段暴露出来,这样增强了数据的安全性。

2、简化数据的操作,易维护。

可以将经常用到的多表联合查询出来的数据,或特定的结果集定义为视图,这样就起到了模块化数据的作用。在使用这些数据时直接查询该视图就可以,而不用到处写长长的SQL语句,这样也起到易维护的作用。

3、视图可以限定查询数据。

比如:对于不同的用户,只提供部分数据给他。这样就可以在视图中限定结果集,然后返回该视图给他。无论用户怎么对视图定义查询条件,也不能查询出不想提供给他的数据。

缺点

虽然视图可以带来种种便利,但不意味着就可以滥用它。因为视图其实就是一段SQL语句,所以它的结果都是每次调用时动态生成的。如果不合理的定义视图,必然带来性能上的损耗。

1、操作视图会比直接操作基础表要慢,所以应尽量避免在大型表上创建视图。

2、尽量不要创建嵌套视图,就是在视图中使用视图。 这样在查询时,会多次重复访问基础表,带来性能损耗。

3、尽量在视图只返回所需的信息,尽量不要在视图使用不需要访问的表。

4、在大型表或者复杂定义的视图,可以使用存储过程代替。

5、频繁使用的视图,可以使用索引视图来代替。

参考资料来源:百度百科-视图sql

参考资料来源:百度百科-结构化查询语言

温馨提示:答案为网友推荐,仅供参考
相似回答