|
我搞了个程序,用vba编程,用ado连接方法连接数据库。
因为有好几个窗体要连接到本地数据库,所以我在模块区建立一个公共模块,代码如下:
Option Compare Database
Option Explicit
Public cn As ADODB.Connection
Public strcnn As String
Public Sub connect()
Dim dbname
On Error Resume Next
' 打开数据库连接。
Set cn = New ADODB.Connection
dbname = Application.CodeProject.Path
If Right$(dbname, 1) <> "\" Then dbname = dbname & "\"
dbname = dbname & "ERP_label.mdb;"
strcnn = "provider=microsoft.jet.oledb.4.0;persist security info=false;data source=" + dbname
cn.Open strcnn
End Sub
在窗体打开事件过程中,设置了数据集变量如Set rs = New ADODB.Recordset
rs.Open "tbl_record_display", cn, , , adCmdTable
当我用共享方式打开数据库时,打开窗体然后进入窗体设计模式就显示错误:“目前你没有对该数据库的独立访问权限,如果继续进行更改,稍后不能将其保存。”
不过我用独占方式打开数据库时,打开窗体时显示错误:“运行时错误”3709“,连接无法用于执行此操作,在此上下文中它可能已被关闭或无效。”
当我将公共模块代码放在窗体打开事件过程中,在独占方式下就没有任何错误发生,请问高手这是什么原因?我希望连接数据库代码放在公共模块区,且在独占方式下没有任何错误?谢谢诶 |
|