Grails继续删除我的表格

时间:2011-07-01 13:34:27

标签: database grails

我的表结构如下:

CREATE TABLE test_two_tabelT1T1_ID INT NOT NULL AUTO_INCREMENT,A1 INT NULL,B1 VARCHAR(45)NULL,{{1} } VARCHAR(45)NULL,C1 DATETIME NULL,PRIMARY KEY(D1));

在Grails:

T1_ID

每次执行我的程序...... Grails删除数据库中的表格,有人知道发生了什么吗?

2 个答案:

答案 0 :(得分:17)

您需要在grails-app/conf/DataSource.groovy

将dbCreate的值从'create-drop'更改为'update'

您当前的值可能是:

development {
    dataSource {
        dbCreate = "create-drop" // one of 'create', 'create-drop','update'
        url = "***"
    }
}

这意味着Grails将在每次重启时重新创建所有表。如果您将其设置为update,它将尝试根据您的数据模型类更新表结构。

您可以在http://www.grails.org/doc/latest/guide/3.%20Configuration.html#3.3%20The%20DataSource

了解有关Grails数据库配置的更多信息

答案 1 :(得分:0)

这可能是一些事情。正如@splix所提到的,它可能是'create-drop'设置。

此外,如果您从未更改数据源,Grails使用内存数据库,因此只有程序运行才会持续。您可以告诉hsqldb持久保存到文件而不是在内存中。您也可以将其更改为指向类似mysql的内容。看here