首先,我想说是h2数据库的新手.我需要在h2数据库中执行sql脚本文件.我有一个脚本文件test.sql,我想在h2数据库中执行它.可能吗?
Tho*_*ler 90
您可以使用RUNSCRIPT SQL语句:
RUNSCRIPT FROM 'test.sql'
Run Code Online (Sandbox Code Playgroud)
或者您可以使用RunScript独立/命令行工具:
java -cp h2*.jar org.h2.tools.RunScript -url jdbc:h2:~/test -script test.sql
Run Code Online (Sandbox Code Playgroud)
您还可以在应用程序中使用RunScript工具:
RunScript.execute(conn, new FileReader("test.sql"));
Run Code Online (Sandbox Code Playgroud)
如果你在H2中使用spring-boot和spring-test,它会自动查找schema.sql
并data.sql
在你的类路径中尝试运行这些.因此,如果你把它们放入,src/test/resources
它们应该被自动拾取并运行
此外,您可以指定要使用属性运行的数据文件.例如,在您的application.properties
喜欢中添加属性
spring.datasource.data=classpath:users.sql, classpath:books.sql, classpath:reviews.sql
Run Code Online (Sandbox Code Playgroud)
将spring配置为运行这三个sql文件而不是运行 data.sql
在OS X(版本1.4.192)上(这实际上并不重要),使用以下命令,无论我做什么,我都看不到任何结果:
java -cp h2*.jar org.h2.tools.RunScript -url "jdbc:h2:file:~/testdb" -user someusername -password somepass -script select.sql
Run Code Online (Sandbox Code Playgroud)
其中select.sql只是:
select * from PUBLIC.MYTABLE;
Run Code Online (Sandbox Code Playgroud)
我必须添加-showResults
输出开始出现之前的内容。这是完整的命令:
java -cp /Users/az/.m2/repository/com/h2database/h2/1.4.192/h2-1.4.192.jar org.h2.tools.RunScript -url "jdbc:h2:file:~/testdb" -user someusername -password somepass -script select.sql -showResults
Run Code Online (Sandbox Code Playgroud)
如果没有所需的jar,请从此处下载(单击jar
每个版本旁边的链接)。到罐子的一些直接链接如下:
1.4.193 (更新31-OCT-2016)
1.4.192 (更新26个可能的2016)
1.4.191 (更新21-JAN-2016)
1.4.190 (更新11-OCT-2016)
归档时间: |
|
查看次数: |
52460 次 |
最近记录: |