十万火急!!!求教各位前辈一个问题!!!拜托了!!!
'数据库连结参数
Dim sqlstr As String '执行的sql语句
Dim rs As ADODB.Recordset '数据集
Dim cn As New ADODB.Connection '连接
Private Sub Form_Load()
'设置数据库连结
Set cn = New ADODB.Connection
cn.ConnectionTimeout = 60
cn.Provider = "sqloledb"
cn.Properties("Data Source").Value = gaSqlSrv
cn.Properties("Initial Catalog").Value = gaOldSqlBase
cn.Properties("Integrated Security").Value = "SSPI"
cn.Properties("User Id").Value = "ABC"
cn.Properties("Password").Value = "123"
cn.CursorLocation = adUseClient
cn.Open ---执行成功!
Set rs = New ADODB.Recordset
执行以下语句:
If rs.State = 1 Then
rs.Close
End If
sqlstr ="select * from OPENROWSET('Microsoft.Jet.OLEDB.4.0','\\Test2000\cyfbak\备份历史库\tlmonhtMid.mdb';;, tbl_txn_lst) "
rs.Open sqlstr, cn
系统提示出错:
OLE DB 提供程序 'Microsoft.Jet.OLEDB.4.0' 报错。
[OLE/DB provider returned message: Microsoft Jet 数据库引擎打不开文件'\\Test2000\cyfbak\备份历史库\tlmonhtMid.mdb'。
它已经被别的用户以独占方式打开,或没有查看数据的权限。]
我试着对该文件进行压缩,操作成功。说明我有对该表操作的权限。
我又直接用'ABC','123'登录sqlserver,
执行:
select *from OPENROWSET('Microsoft.Jet.OLEDB.4.0', '\\Test2000\cyfbak\备份历史库 \tlmonhtMid.mdb';;, tbl_txn_lst)---- 成功!
但放在VB中就提示以上错误.为什么啊?