当前位置: 首页 > 面试题库 >

H2``unscript''命令将所有表名变成大写

澹台锐
2023-03-14
问题内容

我有一个sql脚本(这只是架构定义)。该脚本是mysql dumb的修改版本(摆脱了h2不喜欢的坏字符)。

该脚本将运行,并且该架构已插入到h2数据库中,但是问题在于所有数据库名称都使用大写形式(“ xyz”被转换为“ XYZ”)。

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

为什么会这样呢?我怎样才能告诉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'

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



 类似资料:
  • 在查看文档时,有一个API调用来删除单个pod,但是有一种方法可以删除所有名称空间中的所有pod吗?

  • 问题内容: 是否有Linux命令将列出此终端会话的所有可用命令和别名? 就像您键入“ a”并按下制表符一样,但是对于字母的每个字母。或运行“别名”,但也返回命令。 为什么?我想运行以下命令,看看命令是否可用: 问题答案: 您可以使用内置的bash(1) 将列出您可以运行的所有命令。 将列出您可以运行的所有别名。 将列出您可以运行的所有内置插件。 将列出您可以运行的所有关键字。 将列出您可以运行的所

  • 问题内容: 我需要重命名数据库中所有表中的列。因此必须在所有表中将“ OldColumn”列重命名为“ NewColumn” 我可以使用此查询获取具有此列的表的列表: 但是,如何在所有表中重命名它却尽可能简单,而不必编写游标呢? 问题答案: 当然,您不需要为此使用光标。您可以使用sys.columns和sys.objects生成动态sql。然后简单地执行它。一旦您对动态sql感到满意,就可以随意取

  • 本文向大家介绍Python就将所有的英文单词首字母变成大写,包括了Python就将所有的英文单词首字母变成大写的使用技巧和注意事项,需要的朋友参考一下 摘要: 将英文单词首字母变成大写是一个古老的话题,很常用,也很简单。不过如何用更简单的方式批量完成这个工作,则有很多学问,不想来看看吗! 将英文单词首字母变成大写是非常常用的文本操作,使用capitalize方法可以将一个英文单词的首字母变成大写。