database - 如何删除项目?

标签 database hibernate grails

嗨,我在grails应用中有2个域,这是相关的,当我尝试删除项目时遇到了问题。

Event {
       String eventName;
       Date eventDate;
       Fee eventFee ; 

       constraints = {
          .... 
          eventFee(nullable:true);
       }
    }


Fee{
   String feeName ; 
   ..... 
}

我的问题是,当我尝试删除费用时,即使没有附加费用,也会引发en erorr:ConstraintException。

如何解决该问题以及如何在这两个域之间建立链接?

ps:我正在使用grails 1.2xxx和数据库mysql

最佳答案

这可能是由于某些事件对象引用了您要删除的Fee对象。您可以通过以下(伪)代码查看事件:

def fee = Fee.get(<id>) 
Event.findAllByEventFee(fee).each {
    println it
}

然后可以将每个事件的eventFee设置为null并删除费用:
event.eventFee = null
fee.delete()

关于database - 如何删除项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7481177/

相关文章:

C# 数据库选项

java - 将数据库调用放在自定义 ConstraintValidator 的 `isvalid()` 方法中会导致 stackoverflow 错误,因为它被重复调用

java - Hibernate 在更新时删除关系

Grails 3 领域类索引 TTL 按环境

Grails 脚本部署 war

python - 如何有效地在 Django 中存储对象的排名列表?

php - 没有从数据库中为用户在 PHP 中获取数据

mysql - LOAD DATA LOCAL INFILE 找不到路径

java - 为什么使用 Maven 和 Hibernate 设置一个简单的项目会失败?

hibernate - 我应该依靠脏检查吗?