因此,大概mysqldump可以导出为ansi compatible格式,以便您可以导入其他供应商的数据库。
然而,尝试导入到apache derby我遇到了所有这些语法错误。 以为我尝试了一些正则表达式并修复了一些东西,但似乎不止一对。
我有没有关于mysqldump的东西? 尝试了ddlutils但在第3步之后无法取得进展,这些docs似乎过时了。
我还有其他选择吗?
答案 0 :(得分:1)
mysqldump
选项--compatible=ansi
不会生成完全 ANSI兼容的SQL脚本,它只是尝试生成更多的结果 ANSI兼容:“生成与其他数据库系统或旧MySQL服务器更兼容的输出。”
不幸的是,每个数据库支持的SQL语法有点不同。 SQL是一个相对较弱的标准,比Javascript甚至更弱。有些数据库支持像MySQL那样的兼容性功能,甚至是compatibility modes(免责声明:我是H2的主要作者),但即使这样还不够有时。
您有多种选择:您可以手动更改生成的SQL脚本,也可以使用其他工具复制表结构/数据。一个这样的工具是SQuirreL DB Copy Plugin(我从来没有真正使用它,但从我听说它运作良好)。
答案 1 :(得分:0)
如果您可以以CSV格式或类似方式导出数据,则可以使用Derby数据导入程序导入数据:http://db.apache.org/derby/docs/10.7/ref/rrefimportproc.html