MYSQL到HSQLDB迁移问题

时间:2015-07-06 10:14:40

标签: mysql spring hsqldb liquibase

我有HSQLDB的问题,我有一个MySql数据库,我将内容转储到内存HSQLDB中,当我运行脚本时出现以下错误:Error: unexpected token: (在创建表脚本上并且违规行为TINYINT(3) 如果我删除括号和数字它工作正常,这是一个有效的MYSQL声明,我尝试通过将我的网址更改为:jdbc:hsqldb:mem:dataSource;sql.syntax_mys=true来改变MYSQL,但这仍然无法正常工作。 :(

就像我使用Spring hibernate连接并使用Liquibase从MySQL转储到HSQLDB以及我正在运行HSQLDB v2.3.2

的附加信息一样

2 个答案:

答案 0 :(得分:2)

SQL语法尤其是DDL在不同数据库之间的移植性不是很好。您将不得不在HSQLDB中学习create table的正确语法,这与MySQL有些不同。

您不能只从一种数据库导出表定义并导入到另一种数据库中。 如果情况确实如此,那么SQL Standard会非常松散......

答案 1 :(得分:0)

我假设您有一个DDL脚本,您可以在其顶部添加SET DATABASE SQL SYNTAX MYS TRUE;,另请参阅here(表13.29.MySQL风格语法)。

您可以将此仅用于测试;如果要完全迁移到HSQLDB,更改脚本本身就是长期解决方案。