gpt4 book ai didi

mysql - H2 "runscript"命令将所有表名转为大写

转载 作者:IT王子 更新时间:2023-10-28 23:45:52 30 4
gpt4 key购买 nike

我有一个 sql 脚本(它只是模式定义)。该脚本是一个 mysql 哑巴的修改版本(摆脱了 h2 不喜欢的坏字符)。

脚本运行并将架构插入到 h2 数据库中,但问题是所有数据库名称都是大写的(“xyz”被转换为“XYZ”)。

我需要它们保持小写字母,因为我的应用程序正在寻找小写字母(并且 mysql 数据库中的所有表都是小写字母)。

为什么会这样?我怎么能告诉 h2 不要那样做?有没有更好的方法将架构定义插入到 h2 中?

这是我正在运行的 INT 命令:

jdbc:h2:mem:~/test;INIT=runscript from '~/schema.sql'

编辑:刚刚在 h2 控制台上尝试过,同样的事情。所以这不是 INIT 问题,它与“RUNSCRIPT”命令有关。

试过了

RUNSCRIPT FROM '~/schema.sql'

最佳答案

发现问题。默认情况下,h2 将此设置设置为 true DATABASE_TO_UPPER。将其设置为 false 将按预期保存数据。所以在我的 INIT 命令中(在它之前),我输入了:

 jdbc:h2:mem:~/test;DATABASE_TO_UPPER=false;INIT=runscript from '~/schema.sql'

现在表格以正确的大小写插入

关于mysql - H2 "runscript"命令将所有表名转为大写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17529384/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com