【问题标题】:Migrate Fox Pro DBF files to SQL Server 2012 x64将 Fox Pro DBF 文件迁移到 SQL Server 2012 x64
【发布时间】:2013-10-08 03:34:51
【问题描述】:

我想要迁移到 MSSQL Server 2012 x64 的 80 到 100 个 Fox Pro DBF 数据库文件。

因为 DBF 数据库太多,我正在寻找一种自动/非手动方式将这些 DBF 文件中包含的所有数据移动到 MSSQL Server 数据库表中。每个 DBF 文件有一个单独的表。

我已经尝试了以下代码:

SELECT * 
FROM OPENROWSET('MSDASQL', 'Driver=Microsoft Visual FoxPro Driver;
SourceDB=F:\SomeDBFPath;
SourceType=DBF',
'SELECT  * FROM someDBFFile')

为了查看/探索一个DBF的数据,却出现如下错误信息:

链接服务器“(null)”的 OLE DB 提供程序“MSDASQL”返回错误。
无法为链接服务器“(null)”初始化 OLE DB 提供程序“MSDASQL”的数据源对象

我对使用 DBF 转换器或类似工具等外部软件不感兴趣。

此时我已经安装了位于http://www.microsoft.com/en-us/download/details.aspx?id=13255 的AccessDatabaseEngine_X64 文件,因为之前的建议没有成功。

提前致谢。

【问题讨论】:

    标签: sql sql-server database dbf


    【解决方案1】:

    您可以访问 Visual FoxPro 吗?如果是这样,您可以通过默认菜单工具 -> 向导 -> 升迁。

    首先,进入控制面板,管理工具。下面是 ODBC 数据源(应该是 32 位版本)。进入,然后转到“系统 DSN”选项卡,然后单击右侧的添加按钮。然后将提示您“命名”连接。对于笑容,像“UpsizeMyData”之类的东西。然后它会提示您连接到您尝试连接的数据库的连接信息、连接的用户/密码等。通过并创建 ODBC 连接信息并确保最后的“测试连接”成功。

    完成后,进入 VFP。从上面的菜单步骤中,它将弹出一个用于传输数据库的对话窗口。它会提示您选择要升迁的数据库...通过“获取文件”对话框进行选择。之后,它会提示您连接信息,您刚刚在上面创建的 ODBC 连接应该会列出。选择它,然后选择“下一步”。然后它将提示您输入 SQL 密码以启动连接。

    一旦连接,它将查看您的数据库并查看表。您将看到所有可用表格的并排选择器对话框,您可以选择要升迁的表格...您可以选择一个、多个或全部,然后单击“下一步”。

    下一个对话框将显示您选择的每个表,并允许您确认从 VFP 表到推到 SQL 时对应的列数据类型的数据类型。您可以通过让默认设置去尝试。点击“下一步”。

    最后它会询问你要升迁到哪个数据库。您可以选择现有数据库,或添加新数据库(可能是您第一次选择了解情况)。

    【讨论】:

    • 是否有适用于 Windows x64 的 Visual FoxPro?
    • @user80024,不,只有 32 位,但你应该仍然可以运行它来升级到 sql 数据库,即使 sql 数据库是 64 位的。
    • 你能给我更多关于你的建议的细节吗?
    • @user80024,修改后的答案尽可能地显示步骤。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多