实用的ASP连接数据库的函数

王朝asp·作者佚名  2008-05-30
窄屏简体版  字體: |||超大  

细心的开发人员有时会想到,我们在一个需要读写数据库的页面里包含类似

<!-- #include file="conn.asp" -->

的代码时,实际上,当你没有进行任何读写数据库操作时,这个数据库连接仍然是打开的,仍然在消耗着服务器的资源。

那么,我们有没有办法让数据库连接仅在需要读取数据库时才打开,不读取时就没有任何动作呢,以下即提供这种思路,以求抛砖引玉。

这种思路即是将数据库连接代码封装在函数里,在需要读取时调用这个函数。

以下是SQL连接代码:

Function Open_conn()

dim Conn,Strconn

set Conn=server.createobject("adodb.connection")

Strconn = "Provider = Sqloledb; User ID = 数据库登录帐号; Password = 数据库登录密码; Initial Catalog = 数据库名称; Data Source = (local);"

Conn.open Strconn

set Open_conn=Conn

If Err Then

err.Clear

Conn.close:set Conn=nothing

Response.Write "对不起,数据库连接出错。"

Response.End

End If

End Function

调用方法:

将原来的

rs.open sql,conn

改成

rs.open sql,Open_conn()

以下是ACCESS连接代码:

Function Open_conn()

dim Dbpath,Conn

Dbpath=server.MapPath("数据库路径")

set Conn=server.createObject("ADODB.connection")

Conn.open "data source="&dbpath&";provider=microsoft.Jet.OLEDB.4.0;"

set Open_conn=Conn

If Err Then

err.Clear

Conn.close:set Conn=nothing

Response.Write "对不起,数据库连接出错。"

Response.End

End If

End Function

调用方法:

将原来的

rs.open sql,conn

改成

rs.open sql,Open_conn()

顺便提供一个同一服务器上可以跨站共享ACCESS数据库的老代码,也许有朋友用得着:

有时,我们有很多二级域名,可能需要让这些二级域名调用某同一个ACCESS数据库,在你不愿意使用SQL数据库的情况下,数据库连接可以采用以下办法。(特别提示:如果你的服务器做了FSO安全权限,需要将这个数据库目录设置为,允许你需要调用的各站的IIS用户有权访问修改。)

以下的数据库物理路径类似于 E:\目录\目录\数据库名

dim Conn,Strconn

Set Conn = Server.CreateObject("ADODB.Connection")

Strconn="Provider = Microsoft.Jet.OLEDB.4.0; "

Strconn=Strconn & "Data Source=数据库物理路径"

Conn.Open Strconn

If Err Then

err.Clear

Conn.close:set Conn=nothing

Response.Write "对不起,数据库连接出错。"

Response.End

End If

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航