Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 如何处理Grails/GORM中的关系破裂?_Mysql_Hibernate_Grails_Gorm - Fatal编程技术网

Mysql 如何处理Grails/GORM中的关系破裂?

Mysql 如何处理Grails/GORM中的关系破裂?,mysql,hibernate,grails,gorm,Mysql,Hibernate,Grails,Gorm,我有一个Grails2.4.3应用程序,它将访问一个旧的、易损坏的数据库,其中的数据完整性有问题 随着时间的推移,各种破裂的关系已经建立起来……不知道为什么,我/拥有的组织准备说“这只是生活/历史,我们将接受它。” 问题是,如何“接受它” 具体来说:如何处理Grails/GORM中这些破碎的关系 此时,当我访问一个关系中断的Notes实例时,我得到一个异常: Caused by: org.hibernate.ObjectNotFoundException: No row with the giv

我有一个Grails2.4.3应用程序,它将访问一个旧的、易损坏的数据库,其中的数据完整性有问题

随着时间的推移,各种破裂的关系已经建立起来……不知道为什么,我/拥有的组织准备说“这只是生活/历史,我们将接受它。”

问题是,如何“接受它”

具体来说:如何处理Grails/GORM中这些破碎的关系

此时,当我访问一个关系中断的Notes实例时,我得到一个异常:

Caused by: org.hibernate.ObjectNotFoundException: No row with the given identifier exists: [Contract#292]
我可能会进行如下测试:

Contract.exists(note.contract_id)
所有这些都是我的代码,但是…唷!这将成为一个大规模的练习:在使用前检查每一段关系都会很可怕

有更好的办法吗?一种让我的代码保持干爽和更健壮的方法

这不是一个特别针对GORM/Hibernate/ORM的问题,但我想知道这些框架是否能提供一些帮助

这些关系大多标记为null:true


我的数据库是mysql/innodb。

您可以在关系的映射块中指定
ignoreNotFound:true


我从未注意到这种映射!是的,它是隐藏的,但它是一个宝石与遗留数据库的工作!