Grails仅对年份字段具有唯一约束
比如说,Grails仅对年份字段具有唯一约束,grails,gorm,grails-domain-class,Grails,Gorm,Grails Domain Class,比如说,Event域类具有eventDate属性。此eventDate上存在唯一约束,因此事件每年或每月都必须是唯一的。如何在GORM中指定这一点 class Event{ String name Date eventDate static constraints{ eventDate() //----->unique per year or say month } } 你不能。您需要一个类似于基于函数的索引的东西,该索引基于列值的计算来构建索
Event
域类具有eventDate
属性。此eventDate上存在唯一约束,因此事件每年或每月都必须是唯一的。如何在GORM中指定这一点
class Event{
String name
Date eventDate
static constraints{
eventDate() //----->unique per year or say month
}
}
你不能。您需要一个类似于基于函数的索引的东西,该索引基于列值的计算来构建索引。这是和其他一些数据库,但没有标准语法,GORM也不支持 当然,您可以对迁移脚本中使用的数据库显式执行此操作,例如,在使用插件时,但这将在数据库中执行,并且在域类中不会有任何内容指示正在使用它。如果您使用H2进行集成测试,那么您要么没有此功能,可能会在不同的环境中得到不同的结果,要么必须找出等效的语法 另一种选择是一种小型的非规范化,在插入和更新之前,在域类中添加第二列并计算其值,然后在此基础上构建常规索引