使用MySql工作台将SqLite迁移到MySql期间的逆向工程错误

时间:2013-11-20 06:57:35

标签: mysql sqlite mysql-workbench

我正在使用MySQL工作台迁移向导(Community Edition)将SQLite数据库迁移到MySql。我已经下载了SQLite的ODBC驱动程序。我能够连接到SQLite并检索模式(参见图一)。

但是,在迁移的逆向工程阶段会产生错误(参见图2)。在此示例中,错误显示为“错误:第1行:语法错误,意外的TEXT_STRING。语句被跳过”。由于逆向工程因错误而终止,因此架构不会进行逆向工程。

有谁知道如何解决这个问题?

谢谢你, 卡米尔

图一。  Screenshot A


图二。 Screenshot B

2 个答案:

答案 0 :(得分:2)

根据我的经验,Workbench曾经非常错误,可能这也是一个错误。如果没有人用真正的解决方案回答,我建议你看看这个问题: Quick easy way to migrate SQLite3 to MySQL?

我只是害怕它可能 快速而简单。大多数方法都围绕将SQLite数据库转储到SQL脚本,将脚本转换为MySQL语法并在MySQL中导入/执行它。

答案 1 :(得分:1)

根据我刚刚经历的情况,如果条目中的数据库文件(此处为SQLite)的语法与MySQL不兼容,则会发生这种错误。在我的情况下,当面对“自动增量”这个词(在MySQL语法中不存在)时,它报告了“语法错误,意外IDENT_QUOTED,期待')'”。

进行迁移的方法是将SQLite数据库转储到.sql脚本中,修改它以尊重MySQL的语法并将其导入MySQL。

请参阅Shalmanese的答案https://stackoverflow.com/a/87531/1324798,了解语法与转换脚本之间的差异列表。

可悲的是,我不知道是否还有办法使用Workbench的迁移向导来解决这类问题。

祝你好运。