我有以下类(class),需要手动增加nextId字段。

class SomeIdClass {

Family family
Integer nextId = 0
long timeCreated = new Date().time }

到目前为止,我一直在尝试检索最新的db条目以增加它,而我对此没有任何运气。还是我只是以一种完全错误的方式去做?

解冻

ps:这是我尝试过的方法,但获得Package.SomeId对象的列表
 def si = SomeId.executeQuery(" from SomeId where nextId =  (select max( nextId ) from SomeId) ")

最佳答案

你可以这样做:

def maxNextId = DomainClass.executeQuery("select max(nextId) from DomainClass")[0]

没有看到整个背景,很难说出自己在做什么,但顺便说一句,这看起来很成问题。这种将ID分配给域对象的方法可能是错误的处理方法。但是无论如何,如果在执行查询和使用值之间的时间里,将新对象插入具有更大nextId的数据库中,该怎么办?

关于grails - 如何检索最新创建的数据库条目?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5084245/

10-11 04:09