- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
高校收费管理系统数据库优化策略探究
高校收费管理系统数据库优化策略探究摘要:数据库作为高校收费管理系统的核心和基础,其性能的优劣对整个系统的高效运行起着重要的作用。本文以高校收费管理系统中的SQL Server数据库为研究对象,在对数据库优化的一般策略进行研究的基础上,提出了适合高校收费管理系统的数据库优化方法。
关键词:SQL Server 数据库 优化
随着高校信息化管理程度的不断深入,收费管理已经从原来的手工开票、现金收取、人工记账阶段,转变为现在的银行代扣、软件管理阶段。目前,多数高校都采用了学生收费管理软件,基本上实现了信息化管理[1]。然而,随着高校办学规模的越来越大,很多的人开始采用数据库来处理信息。由此一来用户一多,吞吐量加大就为网络通讯带来了很大的压力。数据库的储存空间必须随之增长,由此使得数据库的性能问题受到了广泛的重视[2]。
1 SQL语句优化
SQL语句优化要达到的效果就是使用性能比较之下很好的SQL语句转换为性能没有那么好的相应的SQL语句。想要操作好数据库的话就要使用好SQL语句,所以说能否高效的使用好SQL语句完全影响到了数据库系统的性能的稳定性。早在各大高校收费管理系统研制开发出来的时候,SQL语句在通常情况下就没能否展现出SQL语句的性能的好坏,主要的原因就是那个时候数据库数据量过于少。只是在通过实践中应用过后,数据库中数据越来越丰富,当下系统是否能采取措施解决系统的响应速度相关的问题变得越来越重要。
下面就高校收费管理系统中SQL语句优化的方法进行探讨:
1.1 避免检索表中所有的列 在收费管理系统开发初期,由于不同用户检索目的不明确,SQL语句中往往使用select*from,因为该语句执行一次命令的时候都必须一一的扫描好表中所有列字段,所以就耗费了比较长的时间。该语句不必对所有的列进行检索的时候主要是在系统投入实际操作过后了,因为那个时候能够比较有目的的针对用户进行检索。例如对于教材管理人员来说,需要查询的结果是的每个学生的教材费缴费总额,可以将以上SQL语句改为select学号,姓名,教材费from StudentPay。
1.2 应尽可能不在where子句中使用“or”操作符 使用“or”操作符会导致全表扫描而导致效率差,例如要查询“软件工程”和“计算机科学与技术”两个专业的学费缴纳情况:
原语句:select学费from StudentPay where 专业=“软件工程”or专业=“计算机科学与技术”
应将上面的查询语句改为:
select 学费from StudentPay where专业=“软件工程”
union all
select学号from StudentPay where 专业=“计算机科学与技术”
1.3 尽可能的不在WHERE条件里使用非聚合表达式 由于非聚合表达式想要运用索引的话难度比较大,所以一般情况下SQL Server必须做大范围的扫描工作。如!=、IS NULL或IS NOT NULL、IN、NOT lN等操作符构成的表达式都是非聚合表达式。使用非聚合表达式造成的后果就是查询效率急速下降。举例来说:
Select*from StudentPay where缴费额!= 4800,将无法通过索引来确定将要命中的行数,因此需要搜索该表的所有行。
1.4 避免正规表达式 matches、like关键字支持通配符匹配,技术上叫正规表达式。但这种匹配特别耗费时间。例如:select?from 学费信息表where缴费额like45’即使在smt id字段上建立了索引,在这种情况下也还是采用顺序扫描的方式。如果把语句改为select*from StudentPay where 缴费额=4500 and 缴费额4600,执行查询的时候如果能采取索引来查询的话,其查询速度是相当快的。
2 索引优化
2.1 索引简介 索引是一个单独的、物理的数据结构,这个数据结构中包含表中的一列或若干列的值以及与此相关的指向表中物理标识。像这样的值的数据都也的逻辑指针的集合[3]。它之所是是一种逻辑性的集合,主要原因就是当指针在按照规定的顺序进行排列之前就能够逻辑的指向存储在表的指定列中的数据值。数据库使用索引的方法和使用书籍中的索引的方法在有很多的相同点,因为他们找特定值的方法就是采取搜索索引这样的方式,接下来才依据指针所指搜索到包含该值的行。
2.2 索引的优化作用 索引是从数据库中获取数据的最高效方式之一,绝大多数的数据库性能问题都采用索引技术得到解决。创建索引不但能维护被索引列的唯一性,而且提供快速访问表中数据的策略。通过设计良好的索引,可以显著提高数据库查询和应用程序的性能。索引可以减少为返回查询结果集而必须读取的数据量,还可以强制表中的行具
您可能关注的文档
最近下载
- 2025年医院卫生院基孔肯雅热防控工作方案(范本).docx
- 油田项目可行性报告.docx
- 全球及中国汽车电子液压线控系统(EHB)行业市场发展现状及发展前景研究报告2025-2028版.docx
- GB51060-2014 有色金属矿山水文地质勘探规范.docx VIP
- 中国甘宝素项目投资计划书.docx
- 中国阻燃改性塑料项目商业计划书.docx
- 万古霉素骨水泥链珠治疗慢性胫骨骨髓炎的手术配合.doc VIP
- 2025高中数学八大核心知识函数函数的值域(解析版).pdf VIP
- 新手小白学造价之六-电缆井工程量计算(组合件).pdf VIP
- 国家标准《高压临氢装置用奥氏体不锈钢无缝钢管(征求意见稿)》.pdf VIP
文档评论(0)