目前我正在编写一个软件,当客户将其部署到两个环境(QA和Production)时,他们的MySQL数据库在这些环境中具有不同的名称。例如,在QA环境中,数据库被称为" foo-qa"和生产数据库被称为" foo-prod"。我无能为力,唉。
当我在测试环境中生成jOOQ类时,让我们说他们的架构安装在名为" foo"的数据库上。当jOOQ生成SQL语句时,所有表引用都以数据库名称为前缀,例如"从foo.mytable"中选择。当我们将它安装到QA或Prod环境时,这些语句不起作用,因为此环境中的数据库具有不同的名称。
我们使用" jdbc:mysql:// ip-address / foo-qa"等URL连接到MySQL。所以在那里已经指定了DB名称。我们不需要在语句中指定数据库名称。
我有什么办法可以解决这个问题吗?理想情况下,说服jOOQ不要在表前添加数据库名称。