0 advantage-database-server sql-server-2008
我试图在SQL 2008中创建一个链接服务器到Advantage v7数据库服务器.我已经使用下面的命令在SQL 2008中成功创建了链接服务器,并且连接测试正常.另外,我连接的Advantage DB没有数据字典.
SQL创建链接服务器
EXEC master.dbo.sp_addlinkedserver
@server = N'ADVANTAGE', @srvproduct=N'Advantage',
@provider=N'Advantage.OLEDB',
@datasrc=N'\\asc1\questtest$\spaulrun'
/* For security reasons the linked server remote logins password is changed with ######## */
EXEC master.dbo.sp_addlinkedsrvlogin
@rmtsrvname=N'ADVANTAGE',
@useself=N'False',
@locallogin=NULL,@rmtuser=NULL,@rmtpassword=NULL
Run Code Online (Sandbox Code Playgroud)
当我运行以下查询时:
select * from
openquery(ADVANTAGE,'select * from members')
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
Msg 7399, Level 16, State 1, Line 1
The OLE DB provider "Advantage.OLEDB" for linked server "ADVANTAGE" reported an error. Access denied.
Msg 7350, Level 16, State 2, Line 1
Cannot get the column information from OLE DB provider "Advantage.OLEDB" for linked server "ADVANTAGE".
Run Code Online (Sandbox Code Playgroud)
我已经验证这不是NT文件权限问题.此外,在显示错误消息之前,我可以在屏幕上看到所有列名称仅一秒钟.所以我从Advantage获得了至少一些表格信息.我只是不知道为什么我收到Access拒绝消息.
任何帮助是极大的赞赏!
这听起来很熟悉,但我不记得我得到的确切错误信息.
尝试在链接服务器设置中转到Advantage OLE DB提供程序,然后右键单击并选择属性并设置"允许进程".
如果我没记错的话,在Management Studio Express中我去了Server Objects - > Linked Servers - > Providers - > Advantage OLE DB Provider(右键单击 - >属性或双击)
设置"允许进程"