我有一个修改 SQL 数据的用户定义函数。它插入到一个表中并返回返回行的 ID。尝试像这样使用它
UPDATE table_X SET REV = REVISION(:timestamp, :user) WHERE ...conditions;
DB2 给出了错误:Routine "REDACTED.REVISION" (specific name "REDACTED") is defined with the MODIFIES SQL DATA option, which is not valid in the context where the routine is invoked.
IBM针对此错误的文档明确说明了函数的MODIFIES SQL DATA
使用方法。
这仅仅是 DB2 中的一个错误还是我遗漏了什么?