大雀软件园

首页 软件下载 安卓市场 苹果市场 电脑游戏 安卓游戏 文章资讯 驱动下载
技术开发 网页设计 图形图象 数据库 网络媒体 网络安全 站长CLUB 操作系统 媒体动画 安卓相关
当前位置: 首页 -> 技术开发 -> ASP专区 -> 如何避免asp的SQL的执行效率低 (转载)

如何避免asp的SQL的执行效率低 (转载)

时间: 2021-07-31 作者:daque

本领一、尽管运用搀杂的sql来包办大略的一堆 sql.   同样的工作,一个搀杂的sql实行的功效高于一堆大略sql实行的功效。有多个查问时,要长于运用join。 ors=oconn.execute("select * from books") while not ors.eof strsql = "select * from authors where authorid="&ors("authorid") ors2=oconn.execute(strsql) response.write ors("title")&">>"&ors2("name")&"&q uot; ors.movenext() wend 要比底下的代码慢: strsql="select books.title,authors.name from books join authors on authors.authorid=books.authorid" ors=oconn.execute(strsql) while not ors.eof response.write ors("title")&">>"&ors("name")&"&qu ot; ors.movenext() wend 本领二、尽管制止运用可革新 recordset ors=oconn.execute("select * from authors where authorid=17",3,3) ors("name")="darkman" ors.update() 要比底下的代码慢: strsql = "update authors set name='darkman' where authorid=17" oconn.execute strsql 本领三、革新数据库时,尽管沿用批处 理革新   将一切的sql构成一个大的批处置sql,并一次运转;这比一个一个地革新数据要有功效得多。如许也越发满意你举行工作处置 的须要: strsql="" strsql=strsql&"set xact_abort on\n"; strsql=strsql&"begin transaction\n"; strsql=strsql&"insert into orders(ordid,custid,orddat) values('9999','1234',getdate())\n"; strsql=strsql&"insert into orderrows(ordid,ordrow,item,qty) values('9999','01','g4385',5)\n"; strsql=strsql&"insert into orderrows(ordid,ordrow,item,qty) values('9999','02','g4726',1)\n"; strsql=strsql&"commit transaction\n"; strsql=strsql&"set xact_abort off\n"; oconn.execute(strsql); 个中,set xact_abort off 语句报告sql server,即使底下的工作处置进程中,即使遇到缺点,就废除仍旧实行的工作。 本领四、数据库索引   那些将在where子句中展示的字段,你该当开始商量创造索引;那些须要排序的字段,也该当在商量之列 。 在ms access中创造索引的本领:在access内里采用须要索引的表,点击“安排”,而后树立相映字段的索引. 在ms sql server中创造索引的本领:在sql server处置器中,采用相映的表,而后“安排表”,点击右键,采用“properties”,采用“indexes/keys” 本领五、制止使text字段太大   当字符串的值巨细不固准时,用varchar比用char的功效要好 些。我已经看到一个例子步调,字段被设置为text(255),然而他的取值常常惟有20个字符。这个数据表有50k个记载,进而使这个数据库很大,大的数据库必定较慢。

热门阅览

最新排行

Copyright © 2019-2021 大雀软件园(www.daque.cn) All Rights Reserved.