易截截图软件、单文件、免安装、纯绿色、仅160KB

SQL Server索引管理之六大铁律


原文转自:http://tech.it168.com/a2009/0218/265/000000265868.shtml
索引是以表列为基础的数据库对象。索引中保存着表中排序的索引列,并且纪录了索引列在数据库表中的物理存储位置,实现了表中数据的逻辑排序。通过索引,可以加快数据的查询速度和减少系统的响应时间;可以使表和表之间的连接速度加快。
  但是,不是在任何时候使用索引都能够达到这种效果。若在不恰当的场合下,使用索引反而会事与愿违。所以,在SQL Server数据库中使用索引的话,还是需要遵守一定的规则。
  铁律一:天下没有免费的午餐,使用索引是需要付出代价的
  索引的优点有目共睹,但是,却很少有人关心过采用索引所需要付出的成本。若数据库管理员能够对索引所需要付出的代价有一个充分的认识,也就不会那么随意到处建立索引了。
  仔细数数,其实建立索引的代价还是蛮大的。如创建索引和维护索引都需要花费时间与精力。特别是在数据库设计的时候,数据库管理员为表中的哪些字段需要建立索引,要调研、要协调。如当建有索引的表中的纪录又增加、删除、修改操作时,数据库要对索引进行重新调整。虽然这个工作数据库自动会完成,但是,需要消耗服务器的资源。当表中的数据越多,这个消耗的资源也就越多。如索引是数据库中实际存在的对象,所以,每个索引都会占用一定的物理空间。若索引多了,不但会占用大量的物理空间,而且,也会影响到整个数据库的运行性能。
  可见,数据库管理员若要采用索引来提高系统的性能,自身仍然需要付出不少的代价。数据库管理员现在要考虑的就是如何在这两个之间取得一个均衡。或者说,找到一个回报与投入的临界点。
  铁律二:对于查询中很少涉及的列或者重复值比较多的列,不要建立索引
  在查询的时候,如果我们不按某个字段去查询,则在这个字段上建立索引也是浪费。如现在有一张员工信息表,我们可能按员工编号、员工姓名、或者出身地去查询员工信息。但是,我们往往不会按照身份证号码去查询。虽然这个身份证号码是唯一的。此时,即使在这个字段上建立索引,也不能够提高查询的速度。相反,增加了系统维护时间和占用了系统空间。这简直就是搬起石头砸自己的脚呀。
  另外,如上面的员工信息表,有些字段重复值比较多。如性别字段主要就是“男”、“女”;职位字段中也是有限的几个内容。此时,在这些字段上添加索引也不会显著的增加查询速度,减少用户响应时间。


相关文档:

PL/SQL游标变量的调用与作为输出参数的应用

      今天有个学生问我调用包里面具有游标类型的输出参数,可是在用PL/SQL程序调用的时候居然报出参数个数或类型错误的异常信息,于是自己也试了一下,果然是出错了。然后就自己琢磨了一下、查查资料和问问同事,原来问题是很简单的,先看一下程序的结构代码:
CREATE OR REPLACE PACKAGE Pkg_S ......

Sql Server 数据库连接问题

参考文献:http://www.cnblogs.com/chenxizhang/archive/2009/04/23/1441913.html
SQL Server提供四种方式连接数据库服务器:
1. share memory: 只适用于客户端和服务器端在同一台机器上,才能采用的连接
2. Named pipe:
在局域网(LAN)内实现连接,一个进程使用一部分的内存来向进程的另一端传递消息,一个进程的输出是另外 ......

PowerDesigner生成SQL ER图 说明文档

一、PowerDesigner生成sql问题
生成sql的方法是 Database -->Generate Database (Ctrl + G ) 但是提示 Could not load VBScript engine.
Check VBScript installation. Generation aborted due to errors detected during the verification of the model. 检查了好久 发现将check model 去掉就可以了!其中, o ......

SQL Server 2005升级的10个理由

SQL Server 2005升级的10个理由
 很多人关心的和担心的都是 SQL Server 2005 相对它的前版本SQL Server 2000所做的重大改进或新增功能。在我升级到SQL2005之后,不得不说的:你也值得拥有。(套用一句广告语,呵呵)
  我总结了一下个人认为SQL Server 2005 中最值得你为之升级的10 个理由。无论你是想了解或学习SQL Se ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号