使用ole db连接带有工作组信息的Access文件.

来源:互联网 发布:java网上商城项目描述 编辑:程序博客网 时间:2024/05/23 16:00

执行下面的sql查询:

SELECT *
 FROM OpenDataSource(
'Microsoft.Jet.OLEDB.4.0',
'Data Source="c:/kingdee/test.A04";')...GLAcct

文件test.A04使用了工作组文件"system.mda",所以显示下面的出错信息:

服务器: 消息 7399,级别 16,状态 1,行 1
OLE DB 提供程序 'Microsoft.Jet.OLEDB.4.0' 报错。
[OLE/DB provider returned message: 没有使用 'c:/kingdee/test.A04' 对象的必要权限。请让系统管理员或安装此对象的人为您设置适当的权限。]
OLE DB 错误跟踪[OLE/DB Provider 'Microsoft.Jet.OLEDB.4.0' IDBInitialize::Initialize returned 0x80004005:   ]。

这个问题终于搞定了,使用下面的语句:

select *
from OpenDataSource(
'Microsoft.Jet.OLEDB.4.0',
'Data Source="c:/kingdee/test.A04";
User ID=sun;
Password=yhgzj;
Jet OLEDB:System database="F:/.../System.mda";')...GLAcct

即可.

多谢下面的文章:

"关于jet db的连接字串,以及加密后的字串"

http://access911.net/fixhtm/72FABF1E10DC.htm?tt=

网站: http://access911.net 不错,作个宣传.