我正在使用DBExpress使用C ++ Builder(或Delphi 2007和XE2)。 我为firebird(我的本地硬盘)连接了两个数据库,一个用于MySQL(在Web上) 使用TSQLConnection。 然后,我的问题是...... 我如何使用(make)SQL语句(或任何东西)将Firebird中的一个表复制到MySQL中的另一个表中? 任何评论都会非常感激..非常感谢...
答案 0 :(得分:6)
您无法使用SQL语句将Firebird表中的内容复制到MySQL表。另一个RDBMS具有此功能,例如Sql Server具有Linked Servers
而MySQL具有FEDERATED engine(仅适用于MySQL数据库)。
所以我有两个选项来处理这个任务:
使用SqlExpr.TSQLQuery
或SqlExpr.TSQLDataSet
迭代数据集,然后在MySQL表中手动插入每条记录(行)。
使用TClientDataSet使用SaveToFile
方法转储Firebird表数据,然后使用另一个TClientDataSet使用LoadFromFile
方法加载数据,最后您可以{{3第二个TClientDataSet的数据到MySQL表。