数据库查询系统的优化新探_第1页
数据库查询系统的优化新探_第2页
数据库查询系统的优化新探_第3页
数据库查询系统的优化新探_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 数据库查询系统的优化新探 0. 引言 数据库系统作为管理信息系统的核心, 各种基于数据库的联 机事务处理以及联机分析处理正逐渐成为计算机应用的最为重 要的部分, 根据以往大量的应用实例来看, 在数据库的各种操作 中,查询操作所占的比重最大,而在查询操作中基于SELECT吾 句在SQL语句中又是代价最大的语句。 在实际工作中,无论是对 数据库系统, 还是对数据库应用系统, 查询系统优化一直是一个 热门话题。 一个成功的数据库应用系统的开发, 肯定会在查询优 化上付出很多心血。 对查询优化的处理, 不仅会影响到数据库工 作效率, 而且会给公司带来实实在在的效益问题。 本文就数据库 查询系统的优化

2、谈几点粗浅认识。 1. 数据库查询系统的优化方法 1.1 谨慎使用通配符 1.2 建立索引 索引作为数据库中的重要数据结构, 它的根本目的就是为了 提高查询的效率。 而优化查询的重要方法就是建立适合关系数据 库系统的索引, 这样就可以避免表扫描, 并减少了因为查询而造 成的输入输出, 有效提高数据库数据的查询速度, 优化了数据库 性能。 创建索引时应该与实际查询需求相结合, 这样才能实现真 正的优化查询。 对所要创建的索引进行正确的判断, 使所创建的 索引对数据库的工作效率提高有所帮助。 为了实现这一点, 我们 应做到以下要求:在熟记数据库程序中的相关SQL语句的前提 下,统计出常用且对性能有

3、影响的语句; 判断数据库系统中哪些 表的哪些字段要建立索引。其次,对数据库中操作频繁的表,数 据流量较大的表, 经常需要与其他表进行连接的表等, 要进行重 点关注。这些表上的索引将对 SQL语句的性能产生重要的影响。 建立索引可以提高数据库的查询速度, 但索引过多, 不但不能实 现优化查询, 反而会影响到数据库的整体性能。 索引作为数据库 中实际存在的对象, 每个索引都要占用一定的物理空间。 所以对 于索引的建立要考虑到物理空间容量, 以及所建立索引的必要性 和实用性。索引建立之后,还要确保其得到了真正的使用,发挥 了其应有的作用。首先,可以通过SQL语句查询来确定所建立的 索引是否得到了使用

4、, 找出没有使用到的索引。 分析索引建立但 没有使用的原因, 使其真正发挥作用。 其次,索引得到使用以后, 是否得到了预期的效果, 对数据库的性能是否实现了真正意义上 的提高,只有合理的索引才能真正提高数据库的性能。 1.3 选择最佳的解决方案 解决同一问题的方法固然很多 , 但应用中应该选择最佳的解 决方法。例如 , 对某一问题的数据库查询有两种方法 ,执行结果一 样, 效率却不同。 如果在程序运行界面上输入了负责人代码 (放到 code中),那么将查询P2000表中负责人代码等于 code的负责人 名;如果没有输入负责人代码,那么查询P2000表中所有负责人 名。负责人代码的取值范围是09

5、999,两种解决方法分别是: (1) IF 没有输入负责人代码 THEN code1=0 code2=9999 ELSE code1=code2= 责人代码 END IF 执行SQL语句为: SELECT负责人名 FROM P2000 WHER负责人代码=:code1 AND负责人代码 1001) or order_num = 1008 虽然在 customer_num 和 order_num 上建了索引,但是在上 面的语句中优化器还是会使用顺序扫描整个表。 因为这个语句要 检索的是分离的行的集合,所以应该改为如下语句: select * from orders where customer_

6、num=104and order_num 1001 union h select * from orders wher eorder_num = 1008 h 这样就能利用索引来处理查询。 1.5 尽量减少对数据库的访问次数 通过搜索参数,尽量减少对表的访问行数 , 最小化结果集, 从而减轻网络负担;能够分开的操作尽量分开处理, 提高每次的 响应速度;在数据窗口使用SQL时,尽量把使用的索引放在选择 的首列;算法的结构尽量简单;在查询时,不要过多地使用通配 符如SELECT FROMT1语句,要用到几列就选择几列,女口: SELECT C0L1,C0L2 FROM T1在可能的情况下尽量限制尽量结果集行数 如:SELECT TOP 300 COL1,COL2,COL3 FROM 因为某些情况下 用户

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论