数据库视图有哪些缺点,MySQL的临时表和视图有什么优缺点吗
来源:整理 编辑:黑码技术 2024-04-26 06:12:24
本文目录一览
1,MySQL的临时表和视图有什么优缺点吗
临时就是只用一会,用完就删的意思表和视图……,咋说呢?你看下面吧!http://wenku.baidu.com/view/c7aec43383c4bb4cf7ecd105.html数据表(真实存在的)->视图(基于表的查询,表数据变了,他也会变的)你这么想就对了:客户端新建了一个会话,这个会话只是服务器与客户端1对1的关系,客户端可能在服务端建立一个临时表,满足客户端处理某些事务的需求,当客户端退出会话后,这个临时表自动drop,没有任何数据信息占用数据库空间。这是第一个优点:省空间。客户端建立临时表只为特定的事务服务,这个表具有专用和私有性,不需要共享给其他人。所以就具备第二个优点:私密性。客户端建立的临时表具有单独操作和读写性能,因此速度上和处理效率上更高,这就具备第三个优点:高效率。类似的情况根据客户端的需求不同而不同,可能具备非常多的可能。
2,视图sql的优缺点
一,视图着重于特定数据。视图可以让用户或者程序开发人员只看到他们所需要的数据,而不需要把表中的所有信息与字段暴露出来,这样增强了数据的安全性。二,简化数据的操作,易维护。我们可以将经常用到的多表联合查询出来的数据,或特定的结果集定义为视图,这样就起到了模块化数据的作用。我们在使用这些数据时直接查询该视图就可以,而不用到处写长长的SQL语句,这样也起到易维护的作用。三,视图可以限定查询数据。比如:对于不同的用户,我们只提供部分数据给他。这样,我们就可以在视图中限定结果集,然后返回该视图给他。这样,无论用户怎么对视图定义查询条件,他也不能查询出我们不想提供给他的数据。 虽然视图可以给我们带来种种便利,但不意味着我们就可以滥用它。因为视图其实就是一段SQL语句,所以它的结果都是每次调用时动态生成的。如果不合理的定义视图,必然带来性能上的损耗。下面是我们在创建视图应该要注意的几点:一,操作视图会比直接操作基础表要慢,所以我们尽量避免在大型表上创建视图。二,尽量不要创建嵌套视图,就是在视图中使用视图。 这样在查询时,会多次重复访问基础表,带来性能损耗。三,尽量在视图只返回所需的信息,尽量不要在视图使用不需要访问的表。四,在大型表或者复杂定义的视图,可以使用存储过程代替。五,频繁使用的视图,可以使用索引视图来代替。
3,SQL中使用视图的优点和缺点是什么
视图的优点与缺点
在程序设计的时候必须先了解视图的优缺点,这样可以扬长避短,视图具有如下的一些优点:
● 简单性。视图不仅可以简化用户对数据的理解,也可以简化他们的操作。那些被经常使用的查询可以被定义为视图,从而使用户不必为以后的操作每次都指定全部的条件。
● 安全性。通过视图用户只能查询和修改他们所能见到的数据。数据库中的其他数据则既看不见也取不到。数据库授权命令可以使每个用户对数据库的检索限制到特定的数据库对象上,但不能授权到数据库特定行和特定的列上。通过视图,用户可以被限制在数据的不同子集上。
● 逻辑数据独立性。视图可以使应用程序和数据库表在一定程度上独立。如果没有视图,应用一定是建立在表上的。有了视图之后,程序可以建立在视图之上,从而程序与数据库表被视图分割开来。
视图也存在一些缺点,主要如下。
● 性能:SQL Server必须把视图的查询转化成对基本表的查询,如果这个视图是由一个复杂的多表查询所定义,那么,即使是视图的一个简单查询,SQL Server也把它变成一个复杂的结合体,需要花费一定的时间。
● 修改限制:当用户试图修改视图的某些行时,SQL Server必须把它转化为对基本表的某些行的修改。对于简单视图来说,这是很方便的,但是,对于比较复杂的视图,可能是不可修改的。
所以,在定义数据库对象时,不能不加选择地来定义视图,应该权衡视图的优点和缺点,合理地定义视图。
4,SQL中用view的优缺点
优点是便捷查询,尤其是结果来源于许多表的时候缺点是不便于维护,尤其用的泛滥的时候视图的优点与缺点 在程序设计的时候必须先了解视图的优缺点,这样可以扬长避短,视图具有如下的一些优点: ● 简单性。视图不仅可以简化用户对数据的理解,也可以简化他们的操作。那些被经常使用的查询可以被定义为视图,从而使用户不必为以后的操作每次都指定全部的条件。 ● 安全性。通过视图用户只能查询和修改他们所能见到的数据。数据库中的其他数据则既看不见也取不到。数据库授权命令可以使每个用户对数据库的检索限制到特定的数据库对象上,但不能授权到数据库特定行和特定的列上。通过视图,用户可以被限制在数据的不同子集上。 ● 逻辑数据独立性。视图可以使应用程序和数据库表在一定程度上独立。如果没有视图,应用一定是建立在表上的。有了视图之后,程序可以建立在视图之上,从而程序与数据库表被视图分割开来。 视图也存在一些缺点,主要如下。 ● 性能:sql server必须把视图的查询转化成对基本表的查询,如果这个视图是由一个复杂的多表查询所定义,那么,即使是视图的一个简单查询,sql server也把它变成一个复杂的结合体,需要花费一定的时间。 ● 修改限制:当用户试图修改视图的某些行时,sql server必须把它转化为对基本表的某些行的修改。对于简单视图来说,这是很方便的,但是,对于比较复杂的视图,可能是不可修改的。 所以,在定义数据库对象时,不能不加选择地来定义视图,应该权衡视图的优点和缺点,合理地定义视图。view就是视图。视图必须要在有表的前提下创建。视图方便表的查询的 。不建表就不能建视图。
5,他们的优点和缺点分别是什么 视图索引存储过程触发器
1、索引的优缺点
1)优点:可以大大提高系统的性能。它不仅可以加快数据检索的速度,还能在检索数据的过程中提高系统的性能,并且可以加速表与表之间的连接。
2)缺点:占用更多的磁盘空间,并且降低添加、删除和更新行的速度。虽然在大多数情况下,索引所带来的数据检索速度的优势远远超过了它的缺陷,但过多的索引不一定能提高数据库的性能。
2、视图优点
1)集中用户数据
2)简化用户操作
3)提高数据安全性
4)降低应用程序对底层表的依赖性
3、存储过程优点
1)提高执行效率:存储过程的执行速度比批处理的执行速度快。
2)增加系统编程能力:存储过程使用编程设计模块化。
3)减少网络通信量:在客户计算机上执行存储过程时,网络中传送的只是该执行语句,而不用传送组成该存储过程中的SQL语句,从而大大减少了网络流量。
4)保证系统安全:系统管理员通过对执行某一存储过程的权限进行限制,从而能够实现对相应的数据访问权限的限制,避免非授权用户对数据的访问,保证数据的安全。
4、触发器优点
1)强化约束:强制复杂业务的规则和要求,能实现比check语句更为复杂的约束。
2)跟踪变化:触发器可以侦测数据库内的操作,从而禁止数据库中未经许可的更新和变化。
3)级联运行:侦测数据库内的操作时,可自动地级联影响整个数据库的各项内容。
4)嵌套调用:触发器可以调用一个或多个存储过程。触发器最多可以嵌套32层。
缺点:性能较低。因为在运行触发器时,系统处理的大部分时间花费在参照其他表的处理上,这些表既不在内存中也不在数据库设备上,而删除表和插入表总是位于内存中。哪有什么优缺点 这些事各自的功能,要看你如何应用到各个场合。
就好像你问,“羽绒服”,“衬衫” 有缺点是什么一样视图:只是一种预先把语句编写好的一种快照,在使用中,真正执行的还是这个语句问题;
索引:主要是考虑到操作性能的优化
存储过程:是数据库的逻辑块处理
触发器:主要考虑连带性;
这4个种功能都不一样;没有什么好比较的
文章TAG:
数据 数据库 视图 哪些 数据库视图有哪些缺点