如何在Grails迁移中将不可为空的列更改为可为空?

时间:2013-09-06 05:18:32

标签: grails database-migration

我需要使用grails迁移插件将当前不可为空的列更改为可为空。 dbm-gorm-diff命令抛出异常,因此我应该将changeSet写入changelog。

2 个答案:

答案 0 :(得分:1)

class Student
{
String Name
String LName
String MName

static constraints={

Name(nullablel:false,required:true)
Lname(nullable:false,required:true)
Mname(nullable:true,required:false)   
}

}

//默认情况下,如果你没有指定nullable const,它将永远可以为空,但我们假设我们将为此生成迁移脚本

//在你的脚本里面让我们说把Mname改成可以为空的

databaseChangeLog = {

    changeSet(author: "developerName (generated)", id: "1369639981631-1") {
dropNotNullConstraint(columnDataType: "varchar(255)", columnName: "Mname", tableName: "student") 
 } 
     }

答案 1 :(得分:-2)

我可以使用modifyDataType changeSet来实现所需的结果,但是如果有任何其他特定的方法非常受欢迎