2

我在 Windows Server 2003 上使用 SQL Server 2008。我想使用链接服务器打开 Visual Foxpro DBF 文件,使用来自 SQL Server 2008 链接服务器功能的 Visual Foxpro 驱动程序 Microsoft OLD DB Provider。

当我使用 Microsoft OLD DB Provider for Visual Foxpro 建立链接服务器连接,打开 Foxpro DBF 文件时,遇到以下错误,任何想法有什么问题?

Can not retrieve required data from this request (Microsoft.SqlServer.Management.Sdk.Src)

Meeting exception when executing Transact-SQL or batch (Microsoft.SqlServer.ConnectionInfo)

Error from Microsoft OLD DB Provider interface "VFPOLEDB" of linked server "DBFServer", access is defined.

Can not retrieved required interface "IID_IDBSchemaRowset" from OLE DB interface "VFPOLEDB" of linked server "DBFServer"

(Microsoft SQL Server 错误 7399)

问候,乔治

4

1 回答 1

3

选中 VFPOLEDB 提供程序上的“允许进程内”:

请参阅 Cindy Winegarden 在http://social.msdn.microsoft.com/forums/en-US/sqlreportingservices/thread/e54d20dd-b65b-4cff-9349-6499e6e069e2上的回答,了解如何操作。

编辑:这是答案的相关部分:

以下是 Stepahnie 于 4 月 10 日在 microsoft.public.data.oledb NNTP 新闻组的帖子中发布的内容:

“最后,我在 MSSQL2005 的链接服务器 -> 提供程序 -> VFPOLEDB 中找到了一个选项‘允许进程内’。启用此选项后,我可以使用 oledb 连接到 vfp。在禁用此选项时,它仅在成功连接的情况下工作 50%。 ...

而且我有另一个具有相同设置的 MSSQL2005(除了禁用“允许进程内”选项),与 vfp 的所有连接都是 100% 成功的......”

正如她所说,我查看并发现在服务器对象>链接服务器>提供程序> VFPOLEDB>常规选项卡>提供程序选项>允许进程中。此外,您可以使用以下代码更改 InProcess 设置:

USE [master]
GO
EXEC master.dbo.sp_MSset_oledb_prop N'VFPOLEDB', N'AllowInProcess', 1
GO 
于 2010-11-11T15:19:17.307 回答