一、索引
1-一、索引的概述
咱们把一个表中的一列或者多列和列中元素所在表中记录的物理地址组合成一个新的表。这个表的记录大体为列的内容和该列所在记录的物理地址。
1-二、索引的优缺点
优势:大大加快了对源表的执行速度,咱们对索引表的检索就能够实现对源表的检索。到底快在哪里?举例说明:咱们经过T-SQL语句查询源表中的一条记录,在没有索引表的时候,计算机首先把整个源表从外存加载到内存,而后再一一匹配,从外存加载到内存耗时是很是的大;在有索引的时候,计算机首先加载索引表,而后匹配,找到后,取出它的物理地址,此时,再从外存中加载大表中的该记录,这种方法,人看的时候麻烦,但计算机可能就不那么认为(具体还要看源表记录的长度和数量)
缺点:索引表须要占物理空间;当对源表操做时,也要维护索引表,是维护的任务加剧了。
二、视图
2-一、视图的概述
视图由一张表或多张表的列数据组成的一张虚拟表,所谓虚拟表,就是该总体表在硬盘上不存在,其实,咱们建立一个视图,其实是建立了一个通过包装了的Select语句,在这里咱们称为A,建立视图,就是咱们往硬盘存放了A,咱们调用该视图的时候,系统就会自动执行一遍A,而后,咱们看见的就是一张表了。(这张表数据的改变时,基表变不变,那要看具体状况了,能够说明的是,咱们能够经过虚拟表达到改变基表数据的目的)
2-二、视图的优缺点
优势:视图能够限制咱们对表中一些数据的访问,增长了数据的安全性;减小了重复写入T-SQL语句。
缺点:复杂的视图通常不能修改内容;能修改的视图,也须要通过变化使该操做应用到基表中。
www.2cto.com
三、游标
3-一、游标的概述
数据库管理系统为了对数据的管理更加高效,采用的是整块数据进行管理操做,这个管理方式对于数据库管理系统来讲是很是的好的,可是,这种管理方式对于应用程序来讲很差,由于我应用程序对于操做管理的数据是不多的,并且针对性也强,根据应用程序的这些特色,咱们为了使应用程序更加的高效,咱们建立了游标,游标就是为了完成对数据集中的数据经行更小单位的操做,也就是对记录集中的数据的操做是按一条一条记录经行的,因此呢,游标是由结果集(能够是零条、一条或由相关的选择语句检索出的多条记录)和结果集中指向特定记录的游标位置组成。游标是由管理多数据到少数据,操做不肯定数据到肯定性数据,对数据顶对性弱到针对性强的一种产物。
3-二、游标的优缺点
优势:应用程序能够应用游标对数据集经行指定行的操做。
缺点:使用不当会使运行效率更低。
四、存储过程
4-一、存储过程的概述
存储过程就是一个SQL语句集,固然,这个语句集能够完成特定的功能,存储过程创建后,就先会通过编译,而后,存放在硬盘上。
4-二、存储过程的优缺点
优势:一次编译,屡次执行,使用户不用屡次的书写相同的SQL语句了,同时这些SQL语句也不用一直先编译在执行了,节省了时间。
缺点:简单应用换能够,复杂的时候应用,就是变的复杂。
五、触发器
5-一、触发器的概述
触发器就是特殊的存储过程,特殊在,触发器不须要经过人为(例:在程序中调用)的操做来启动它,触发器的启动是由事件(删除、更新等)的执行来自动启动的。
5-二、触发器的优缺点
优势:是数据的安全性更强,例:经过触发器能够取消删除数据的操做。
缺点:维护数据的时候变得有些复杂。