sql - 使用 SQL 脚本在 SQL Server 中导入 DBF 文件

标签 sql .net sql-server foxpro dbf

如何使用 SQL 脚本将 .dbf 文件导入 SQL Server?

从这篇文章中找到了答案,但不幸的是它们都不适合我:( :

当我尝试这段代码时:

SELECT * 
INTO [APP_DB]..[BILLHEAD] 
FROM OPENROWSET('MSDASQL', 'Driver=Microsoft Visual FoxPro Driver; SourceDB=D:\DBF; SourceType=DBF', 'SELECT * FROM BILLHEAD')

我收到此错误:

OLE DB provider "MSDASQL" for linked server "(null)" returned message "[Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified". Msg 7303, Level 16, State 1, Line 1 Cannot initialize the data source object of OLE DB provider "MSDASQL" for linked server "(null)".

而且,当尝试这个时:

SELECT * 
FROM openrowset('VFPOLEDB','D:\DBF\BILLHEAD.dbf';'';
                '','SELECT * FROM BILLHEAD')

我收到此错误:

Msg 7438, Level 16, State 1, Line 1
The 32-bit OLE DB provider "VFPOLEDB" cannot be loaded in-process on a 64-bit SQL Server.

我不想下载任何第三方应用程序。这就是为什么我正在尝试所有可能的解决方案,我现在需要你们的帮助。我正在创建一个小型应用程序来将 .DBF 文件导入 SQL Server。

问候,

最佳答案

您使用的是 64 位 SQL 服务器,但 FoxPro OLE DB 驱动程序是 32 位。您需要咨询this article其中讨论了如何将 32 位 OLE DB 驱动程序与 64 位 SQL Server 一起使用。

关于sql - 使用 SQL 脚本在 SQL Server 中导入 DBF 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20391251/

相关文章:

c# - MVC 5 无法使用 Linq to SQL 类创建 Controller

mysql - 从 SQL 中的表中选择不同的日期间隔

c# - 深拷贝 System.Windows.Forms.WebBrowser 对象/恢复状态

sql-server - SQL Server 2008 事件监视器资源等待类别 : Does Latch include CPU or just disk IO?

sql - 如何从第一个重复项开始删除具有相同 ID 的其余行?

c# - 为什么编译的委托(delegate)要比声明的委托(delegate)快?

c# - 应通过调用 Select 来简化循环 - sonar cloud error c#

SQL Server 2008 连接两个查询

c# - 手动处理 SqlDbConnection 导致 "internal .net framework provider error 1"

sql - 在多个条件下返回左外连接中的最后一行