十万火急!!!求教各位前辈一个OpenRowset()问题!!!拜托了!!!

chenyf2006 2005-08-10 10:59:03
'数据库连结参数
Dim sqlstr As String '执行的sql语句

------------VB中的ADO设置----------------------------------
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中就提示以上错误.为什么啊?
...全文
84 点赞 收藏 2
写回复
2 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
chenyf2006 2005-08-11
已经关闭了啊,还是不行。求教!!!!
回复
ghostzxp 2005-08-10
你把打开的access表关掉后,执行vb
回复
相关推荐
发帖
MS-SQL Server
创建于2007-09-28

3.3w+

社区成员

MS-SQL Server相关内容讨论专区
申请成为版主
帖子事件
创建了帖子
2005-08-10 10:59
社区公告
暂无公告