|
网站首页
|
JAVA文章
|
AppServers
|
Web开发
|
应用开发
|
资源下载
|
论坛
想学好编程,外语很重要,最新的编程技术还是在国外 [enadd 2006年12月25日]
设为首页
加入收藏
联系站长
您现在的位置:
编程笔记网
>>
数据库
>>
sqlserver
>> 文章正文
数据访问-与数据库建立连接
【字体:
小
大
】
数据访问-与数据库建立连接
作者:- 文章来源:- 点击数: 更新时间:2006-4-16
在第一部分,我们讨论了如何优化
ASP
代码。在这一部分,我们把重点放在数据访问上。
一般情况下,数据访问时间要比
ASP
代码解释,编译时间长,不要让数据检索成为影响
ASP
性能的瓶颈。
首先,讲一些老生常谈的话。比如:需要声明变量,要用 Response.Write SQL_string 来进行调试,要用 On Error Resume
Next 来捕获错误。不要在 Application 和 Session 中存储 Connection 对象等等,都是一些很多人知道而又不屑一顾的常
识。
提高数据访问速度包含两方面内容:1 与
数据库
建立连接。2 检索数据。
建立高效的连接是优化
数据库
访问的第一步。你需要了解连接池的概念( 参见文章: 连接池(Connection Pooling)介绍 );了解
连接
数据库
的方法。另外,测试是很重要的,如果你想亲自进行测试,可以下载上一部分提到的 WAST ,它可以模拟大量用户同时
点击的情况。在这里,假设你使用的
数据库
是 MS SQL Server 7.0 ,如果 操作系统是 NT ,那么你可以在性能监视器中监测
SQL7 的用户连接数(counter:User Connections);如果操作系统是98的话,可以使用 SQL7 的 Profiler。
下面,开始讨论如何与
数据库
建立连接,以及连接池的问题。
1. 使用 OLEDB
与
数据库
建立连接有三种方法:DSN,DSN-less,OLEDB( 参见文章: 用ADO连接
数据库
的三种方法 )。建议使用 OLEDB。
2. 尽快释放
数据库
对象
假设有 page1.asp 和 page2.asp,在多人同时点击的情况下,服务器可能会这样工作:
第一个人:page1.asp 的1-5行,
第二个人:page1.asp 的1-5行,
第一个人:page1.asp 的6-20行,
第二个人:page1.asp 的1-5行,
第三个人:page1.asp 的1-5行,
第四个人:page1.asp 的1-5行,
第二个人:page1.asp 的6-20行,
第一个人:page2.asp 的1-5行,
......
设想一下:有几千人同时访问你的主页,那么,服务器就会执行数千行,数万行语句后才回到第一个人请求的页面上。因此,我们
应尽可能快的处理某个功能,某个任务。看下列代码:
<%
rs1.Open strSQL1,cnn1 cnn1 is connection object
rs2.Open strSQL2,cnn2
rs3.Open strSQL3,cnn3
......
处理 rs1
处理 rs2
处理 rs3
......
rs1.Close
rs2.Close
rs3.Close
cnn1.Close
cnn2.Close
cnn3.Close
%>
这种处理结果集的方法会占用比你想象要多的资源,正确的用法应为:
<%
rs1.Open strSQL1,cnn cnn is connection object
处理 rs1
rs1.Close
cnn1.Close
......
rs2.Open strSQL2,cnn
处理 rs2
rs2.Close
cnn2.Close
......
rs3.Open strSQL3,cnn
处理 rs3
rs3.Close
cnn3.Close
......
%>
或许你会说:在 rs2 的处理中,我还需要 rs1 的值,所以不能在处理 rs2 前关闭 rs1。那么解决这个问题更好的办法是采用
GetRows 和 GetString,在后面会有详细的说明。
尽快的释放对象是保证
数据库
连接重用的前提。( 参见文章: 让
数据库
的连接更有效
[1]
[2]
[3]
下一页
文章录入:enadd 责任编辑:enadd
上一篇文章:
WIN2000下使用SQL Server错误一例
下一篇文章:
用表单来提交sql(转)3
【
发表评论
】【
加入收藏
】【
告诉好友
】【
打印此文
】【
关闭窗口
】
最新热点
最新推荐
相关文章
用表单来提交sql(转)2
用表单来提交sql(转)3
用表单来提交sql(转)3
WIN2000下使用SQL Server错误…
Microsoft SQL Server 7.0数…
如何恢复系统数据库?
用表单来提交sql(转)
用SQL Server为Web浏览器提供…
网友评论:
(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
|
设为首页
|
加入收藏
|
联系站长
|
友情链接
|
版权申明
|
管理登录
|
Copyright ©2000 - 2005
Enadd
.com
备案序号:辽ICP备06005595号
QQ:1656107
站长:
enadd