H2 连接时执行SQL

有时,特别是对于内存数据库,在客户端连接到数据库时自动执行 DDL 或 DML 命令是非常有用的。这一功能可通过 INIT 属性启用。请注意,可以向 INIT 传递多个命令,但必须转义分号分隔符,如下例所示。

String url = "jdbc:h2:mem:test;INIT=runscript from '~/create.sql'\;runscript from '~/init.sql'";

请注意,只有在 Java 或属性文件中才需要使用双反斜线。在图形用户界面或 XML 文件中,只需要一个反斜杠:

<property name="url" value="jdbc:h2:mem:test;INIT=create schema if not exists test\;runcript from '~/sql/init.sql'" />

初始脚本中的反斜线(例如在运行脚本语句中指定 Windows 中的文件夹名称)也需要转义(使用第二个反斜线)。因此,在文件夹名称中避免使用反斜线可能会更简单,而应使用正斜线。

说说我的看法
全部评论(
没有评论
关于
本网站属于个人的非赢利性网站,转载的文章遵循原作者的版权声明,如果原文没有版权声明,请来信告知:hxstrive@outlook.com
公众号