最近对于视图、索引、存储过程的定义及优缺点进行了详细的学习,下面是学习过程中总结的一些知识点,拿出来与大家一起分享,有总结的不到位的地方欢迎大家留言指教。
视图:
视图的定义:
视图是一个虚拟表,存储在数据库中的查询的SQL 语句,视图中的数据来自于一张或者多张基础表,但是不占用数据库物理内存,对视图的操作与对表的操作一样,可以对其进行查询、修改(有一定的限制)、删除。
视图的作用:
* 简单性。看到的就是需要的。视图不仅可以简化用户对数据的理解,也可以简化他们的操作。那些被经常使用的查询可以被定义为视图,从而使得用户不必为以后的操作每次指定全部的条件。
* 安全性。通过视图用户只能查询和修改他们所能见到的数据。但不能授权到数据库特定行和特定的列上。通过视图,用户可以被限制在数据的不同子集上:
* 逻辑数据独立性。视图可帮助用户屏蔽真实表结构变化带来的影响。
视图的优点:
1. 视点集中
视图集中即是使用户只关心它感兴趣的某些特定数据和他们所负责的特定任务。这样通过只允许用户看到视图中所定义的数据而不是视图引用表中的数据而提高了数据的安全性。
2. 简化操作
视图大大简化了用户对数据的操作。因为在定义视图时,若视图本身就是一个复杂查询的结果集,这样在每一次执行相同的查询时,不必重新写这些复杂的查询语句,只要一条简单的查询视图语句即可。可见视图向用户隐藏了表与表之间的复杂的连接操作。
3. 定制数据
视图能够实现让不同的用户以不同的方式看到不同或相同的数据集。因此,当有许多不同水平的用户共用同一数据库时,这显得极为重要。