1
在Oracle我可以從一個UPDATE語句,像這樣返回信息:的Informix相當於Oracle的UPDATE ... RETURNING INTO說法
UPDATE SOME_TABLE
SET SOME_COL = SYSDATE
WHERE
...
RETURNING SOME_COL INTO :OutParameter
與受影響的行數,這允許檢查行是否存在相結合,更新它,然後返回關於更新行的一些信息(如新更新的值,或行ID或其他),全部在一個查詢中。
這也可以在SQL Server中使用OUTPUT子句完成。
在Informix中有這樣的事嗎?我檢查了Informix的UPDATE syntax和 它看起來不像它有任何等效物...任何替代方法?
您可以使用'RETURNING'子句將值傳入集合中,以便一次捕獲多行。 – 2012-07-17 12:43:54
在Adam的評論中進行了擴展,RETURNING子句的非常有用,以便您的UPDATE,INSERT或DELETE語句返回有關修改的行的信息。在你的例子中,你可以添加RETURNING foo INTO:F,讓它在乘以baz * bar之後輸出foo的最終值。這將適用於由順序器,隨機函數,觸發器,函數等改變的值。 – 2012-07-17 13:25:57
無論如何,我已經接受了「Informix中沒有等價於RETURNING子句」的答案。 – 2012-07-17 13:31:33