注册 登录
编程论坛 ASP技术论坛

求救:数据库连接定义成函数或过程

Wadialin 发布于 2007-11-27 16:02, 740 次点击
  我想把数据库连接定义成函数或是过程,以便其他地方调用!
我是这样写的,但是不能被调用。
Sub MyConn()
    Dim Conn,StrConn
        Set Conn = Server.CeateObject("ADODB.Connection")
        StrConn = "Dbq="&Server...................                       '确认连接字串没有错
        Conn.Open StrConn
End Sub

Sub CloseConn()
    Conn.Close
    Set Conn = Nothing
End Sub

Sub MyRs()
    Set Rs = Server.CeateObject("ADODB.RecordSet")
End Sub

Sub CloseRs()
    Rs.Close
    Set Rs = Nothing
End Sub

'--------------------------------------------------------
'调用
Call MyConn()
Call MyRs()
Dim StrSql
StrSql = "................"                   '确认SQL语句无误
Rs.Open StrSql,Conn,1,1

Response.Write Rs(0)

Call CloseRs()
Call CloseConn()

以上可能存在拼写错误,本人直接在文本框打出来的,有个别的单词忘了……
在自己电脑上注释掉那些过程的的定义(如 'Sub MyConn()),直接运行可以显示数据库里的数据,望高手指点……,或是有比叫好的代码?

[[italic] 本帖最后由 Wadialin 于 2007-11-27 16:23 编辑 [/italic]]
3 回复
#2
yms1232007-11-27 16:26
楼主的Conn并不是全局对象如果楼主要使用过程调用的话Conn必须声明为全局对象。
Dim Rs,Conn,StrConn'这个声明一定要放在最开始作为全局对象使用。
Sub MyConn()
        Set Conn = Server.CeateObject("ADODB.Connection")
        StrConn = "Dbq="&Server...................                       '确认连接字串没有错
        Conn.Open StrConn
End Sub

Sub CloseConn()
    Conn.Close
    Set Conn = Nothing
End Sub

Sub MyRs()
    Set Rs = Server.CeateObject("ADODB.RecordSet")
End Sub

Sub CloseRs()
    Rs.Close
    Set Rs = Nothing
End Sub

'--------------------------------------------------------
'调用
Call MyConn()
Call MyRs()
Dim StrSql
StrSql = "................"                   '确认SQL语句无误
Rs.Open StrSql,Conn,1,1

Response.Write Rs(0)

Call CloseRs()
Call CloseConn()
#3
Wadialin2007-11-27 18:54
谢谢版主,我去试试看……
#4
jackyzhangyb2007-11-27 21:59
没有必要定义成函数也可以调用啊
没有必要定义成函数也可以调用啊
1