我在更新 Oracle xml_type 列时遇到问题。
我使用 find 方法选择条目
myobj = find(id)
然后尝试使用以下方法更新它:
myobj.update_attribute(:the_column_name, new_content)
该方法完成且没有任何错误,但该列未更新。
我验证其他属性可以使用相同的方法调用正确更新:
myobj.update_attributes(:the_column_name=>new_content, status=>2)
我还验证了当我这样做时:
ModelClassName.update_all(:the_xml_colum_name=>new_content)
这些行实际上确实得到了更新。这让我很困惑。update_all 方法可以更新 xml 列,但单行上的 update_attributes 不会(虽然它正确更新了非 xml 属性)。
我将 jruby 与 activerecord-oracle_enhanced-adapter (1.4.2) 和 Oracle 11g 一起使用。