SQL 2008 链接服务器访问被拒绝错误的优势

发布于 2024-10-13 10:56:42 字数 1127 浏览 2 评论 0原文

我正在尝试在 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

当我运行以下查询时:

select * from
openquery(ADVANTAGE,'select * from members')

我收到此错误:

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".

我已验证这不是 NT 文件权限问题。另外,就在显示错误消息之前,我可以在屏幕上看到所有列名称一秒钟。所以我至少从 Advantage 那里得到了一些表格信息。我只是不知道为什么会收到“访问被拒绝”消息。

非常感谢任何帮助!

I am trying to create a linked server in SQL 2008 to an Advantage v7 database server. I've successfully created the linked server in SQL 2008 using the commands below and the connection tests out fine. Also, the Advantage DB I'm connecting to does not have a data dictionary.

SQL to create the Linked Server

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

When I run the following query:

select * from
openquery(ADVANTAGE,'select * from members')

I get this error:

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".

I've verified that this is not an NT File permissions issue. Also, just before the error messages are displayed, I can see all of the column names on the screen for just a second. So I'm getting at least some table information back from Advantage. I just don't know why I'm getting the Access denied message.

Any help is greatly appreciated!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

半葬歌 2024-10-20 10:56:42

这听起来很熟悉,但我不记得收到的确切错误消息。

尝试转到链接服务器设置中的 Advantage OLE DB 提供程序,右键单击并选择属性并设置“允许进程内”。

如果我没记错的话,在 Management Studio Express 中我去了
服务器对象 ->链接服务器 ->供应商-> Advantage OLE DB Provider(右键单击 -> 属性或双击)

设置“允许进程内”

This sounds familiar, but I don't remember the exact error message I got.

Try going to the Advantage OLE DB Provider in the Linked Server setup and right click and choose properties and set "Allow Inprocess".

If I remember correctly, in Management Studio Express i went to
Server Objects -> Linked Servers -> Providers -> Advantage OLE DB Provider (Right Click->Properties or Double Click)

Set "Allow Inprocess"

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文