一个ASP连接数据库的函数

开发人员有时会想到,我们在一个需要读写数据库的页面里包含类似
  
  <!-- #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
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值