【问题标题】:How to copy a database's table to another database's corresponding one using TSQLConnection/dbExpress?如何使用 TSQLConnection/dbExpress 将一个数据库的表复制到另一个数据库的对应表?
【发布时间】:2011-11-01 18:24:17
【问题描述】:

我正在通过 DBExpress 使用 C++ Builder(或 Delphi 2007 和 XE2)。 我连接了两个数据库,一个用于 firebird(我的本地硬盘),一个用于 MySQL(在 Web 上) 使用 TSQLConnection。 那么,我的问题是…… 我如何使用(制作)SQL 语句(或任何东西)将 Firebird 中的一个表复制到 MySQL 中的另一个表中? 任何评论将不胜感激..提前非常感谢..

【问题讨论】:

    标签: delphi c++builder dbexpress


    【解决方案1】:

    您不能使用 SQL 语句将 Firebird 表中的内容复制到 MySQL 表中。另一个 RDBMS 具有此功能,例如 Sql Server 具有 Linked Servers 而 MySQL 具有 FEDERATED engine(仅适用于 MySQL 数据库)。

    所以我有两个选项来处理这个任务:

    1. 使用SqlExpr.TSQLQuerySqlExpr.TSQLDataSet 遍历数据集,然后在 MySQL 表中手动插入每条记录(行)。

    2. 使用TClientDataSet使用SaveToFile方法转储Firebird表数据,然后用另一个TClientDataSet使用LoadFromFile方法加载数据,最后你可以merge第二个TClientDataSet的数据到 MySQL 表。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多