我有一个grails应用程序,我运行并第一次持有一些数据。现在我想在应用程序之外检查该数据库。我怎样才能做到这一点?
我可能会重新运行我的应用程序并检查这个但是我被卡住了,因为我的应用程序停止运行并且从不同的地方抛出空指针异常。因此我想检查应用程序之外的数据。
以下是环境的DataSource.groovy
设置:
development {
dataSource {
dbCreate = "update" // one of 'create', 'create-drop', 'update', 'validate', ''
url = "jdbc:h2:devDb;MVCC=TRUE;LOCK_TIMEOUT=10000;DB_CLOSE_ON_EXIT=FALSE"
}
正如您所见,DB_CLOSE_ON_EXIT=FALSE
,所以即使我重新运行应用程序,我猜测数据也不会被删除。
另一方面,如果我将当前项目移出上下文并运行另一个项目,数据是否仍然存在?
道歉,如果这是一个简单的问题,我刚开始用grails。感谢
答案 0 :(得分:0)
如您所见,DB_CLOSE_ON_EXIT = FALSE,所以我猜数据是 即使我重新运行应用程序也没有删除。
DB_CLOSE_ON_EXIT
与数据是否被删除无直接关系。有关详细信息,请参阅http://www.h2database.com/html/features.html#do_not_close_on_exit。
使用您显示的设置,当您的Grails应用程序终止您的数据时,仍然应该在数据库中(不是因为DB_CLOSE_ON_EXIT
)。您可以使用与DataSource.groovy
文件中的类似JDBC URL连接到任何程序中的同一数据库。您可能需要从同一目录运行其他应用程序,或者在URL中提供数据库的完全限定路径,例如jdbc:h2:/path/to/devDb
。
我希望有所帮助。