我的目的是在自定义的模块中做好连接数据库(连接的方法是使用ODBC与数据库进行连接,数据源名为:SysConn1)
然后在其他的窗体使用到SQLSERVER
数据时直接调用即可,可是老是在调用第二次时出错,我也不知道是哪里出了错,还请大家指点一下:1、我在工程中定义了一个明名为:Module1,在模块中写了如下语句:Option Explicit
Global DaConn As New rdoConnection
Global setRdoa As rdoResultset
----------------------------------------------------------------------------------------
Public Function DataConnect()
On Error GoTo ErrorHandler
With DaConn
.Connect = _
"Driver={SQL Server};SERVER=home;DATABASE=Mydata1;DSN=SysConn1;UID=sa;PWD=123"
.LoginTimeout = 3
.CursorDriver = rdUseOdbc
.EstablishConnection rdDriverComplete
End With
Exit Function
ErrorHandler:
MsgBox(Err.Description & Chr(13) & "请与计算机系统人员联系!" )
End Function
----------------------------------------------------------------------------------------
2、然后建立一个新窗体,在FORM_LOAD事件中写入以下语句:
Private Sub Form_Load()
DIM Sql AS string
Call DataConnect Sql1 = "SELECT * FROM tab1 "
Set SetRdoa = DaConn.OpenResultset(Sql1, 2)
If setRdoa.RowCount > 0 Then
setRdoa.MoveFirst
msgbox setrdoa.rdoColumns(0)
End If
Sql1 = "SELECT * FROM tab2 "
Set SetRdoa = DaConn.OpenResultset(Sql1, 2) '----执行到这一句时就出错了
'----错误提示为:“对象不支持该属或方法!”
If setRdoa.RowCount > 0 Then
setRdoa.MoveFirst
msgbox setRdoa.rdoColumns(0)
End if
end sub
然后在其他的窗体使用到SQLSERVER
数据时直接调用即可,可是老是在调用第二次时出错,我也不知道是哪里出了错,还请大家指点一下:1、我在工程中定义了一个明名为:Module1,在模块中写了如下语句:Option Explicit
Global DaConn As New rdoConnection
Global setRdoa As rdoResultset
----------------------------------------------------------------------------------------
Public Function DataConnect()
On Error GoTo ErrorHandler
With DaConn
.Connect = _
"Driver={SQL Server};SERVER=home;DATABASE=Mydata1;DSN=SysConn1;UID=sa;PWD=123"
.LoginTimeout = 3
.CursorDriver = rdUseOdbc
.EstablishConnection rdDriverComplete
End With
Exit Function
ErrorHandler:
MsgBox(Err.Description & Chr(13) & "请与计算机系统人员联系!" )
End Function
----------------------------------------------------------------------------------------
2、然后建立一个新窗体,在FORM_LOAD事件中写入以下语句:
Private Sub Form_Load()
DIM Sql AS string
Call DataConnect Sql1 = "SELECT * FROM tab1 "
Set SetRdoa = DaConn.OpenResultset(Sql1, 2)
If setRdoa.RowCount > 0 Then
setRdoa.MoveFirst
msgbox setrdoa.rdoColumns(0)
End If
Sql1 = "SELECT * FROM tab2 "
Set SetRdoa = DaConn.OpenResultset(Sql1, 2) '----执行到这一句时就出错了
'----错误提示为:“对象不支持该属或方法!”
If setRdoa.RowCount > 0 Then
setRdoa.MoveFirst
msgbox setRdoa.rdoColumns(0)
End if
end sub
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货