【发布时间】:2011-01-13 02:49:33
【问题描述】:
我尝试通过执行以下操作来使用 SQL Server 2008 中的链接服务器来访问 Microsoft Access 2003 表。
EXEC sp_addlinkedserver access1t, 'OLE DB Provider for Jet', 'Microsoft.Jet.OLEDB.4.0', 'C:\tester.mdb'
EXEC sp_addlinkedsrvlogin access1t, FALSE, Null, Admin, Null
GO
CREATE VIEW TI001APCE1265 AS SELECT * FROM access1t...Table1
但是,我得到了错误:
OLE DB provider "Microsoft.Jet.OLEDB.4.0" for linked server "access1t" returned message "Unspecified error".
Msg 7303, Level 16, State 1, Procedure TI001APCE1265, Line 1
Cannot initialize the data source object of OLE DB provider "Microsoft.Jet.OLEDB.4.0" for linked server "access1t".
我的访问数据库上没有密码/用户名,但是查看我理解的文档,我必须像上面一样使用 sp_addlinkedsrvlogin。我也试过没有登录。
我还是遇到同样的错误 - 这是怎么回事?!
谢谢大家
调试输出
数组 ( [0] => 数组 ( [0] => 42000 [SQLSTATE] => 42000 [1] => 7303 [代码] => 7303 [2] => [Microsoft][SQL Server Native Client 10.0][SQL Server]不能 初始化数据源对象 OLE DB 提供程序 “Microsoft.Jet.OLEDB.4.0”用于链接 服务器“access1265293168”。 [信息] => [Microsoft][SQL Server Native Client 10.0][SQL Server]不能 初始化数据源对象 OLE DB 提供程序 “Microsoft.Jet.OLEDB.4.0”用于链接 服务器“access1265293168”。 ) [1] => 数组([0] => 01000 [SQLSTATE] => 01000 [1] => 7412 [代码] => 7412 [2] => [Microsoft][SQL Server Native Client 10.0][SQL Server]OLE DB 提供程序“Microsoft.Jet.OLEDB.4.0” 链接服务器“access1265293168” 返回消息“未指定的错误”。 [消息] => [微软][SQL Server Native Client 10.0][SQL Server]OLE DB 提供程序“Microsoft.Jet.OLEDB.4.0” 链接服务器“access1265293168” 返回消息“未指定的错误”。 ))
【问题讨论】:
-
我在看这个问题:stackoverflow.com/questions/2065083/… - 我将如何传递 NT 登录??
-
NT AUTHORITY\SYSTEM 也不起作用,如果是这样的话。
-
您是否尝试过提供 Jet 默认用户名“admin”?我不知道它是否需要,但没有用户参与就打开 Jet 数据存储这样的事情。
标签: sql-server tsql ms-access oledb linked-server