我们从 ColdFusion 11 迁移到 ColdFusion 2018,现在 ORM 正在破坏该EntitySave
方法,我们收到以下错误消息。
错误消息 - 此异常的根本原因是:coldfusion.orm.hibernate.HibernateSessionException:批量更新从更新 [0] 返回了意外的行数;实际行数:0;预期:1。
我们有 2 个具有一对多关系的类,例如 Email.cfc(父)和 EmailItems.cfc(子)。当我们尝试保存 Email.cfc 对象时,hibernate 也会创建一个 UPDATE 查询EmailItems
,这仅在 ColdFusion 2018 中发生。
这是 Email.cfc 中定义的属性。
<cfproperty name="EmailItems"
lazy="true"
fieldtype="one-to-many"
inverse="true"
fkcolumn="EmailID"
cfc="EmailItem"
singularName="EmailItem"
type="struct"
structkeycolumn="EmailItemKey"
structkeytype="string"
cascade="none"
/>
我们正在使用 inverse,它仍然为子类“EmailItems”创建一个 UPDATE 查询,这是失败的原因EntitySave(Email)
。ColdFusion 11 一切正常。