0
當更新語句不起作用時,是否可能引發異常?如果可能,如何更新,否則在oracle中插入
如:
UPDATE tableA
SET x = 2,
modified_by = userID,
WHERE prod_id = in_prod_id
AND loc_id = in_loc_id
AND invType = in_InvType
AND inv_status = 'N'
但是,如果這種說法沒有找到它需要更新我希望能夠引發異常或以某種方式識別它,所以我可以執行INSERT語句行。
我試着做
EXCEPTION
WHEN NO_DATA_FOUND
THEN
-- insert into.....
,但沒有工作.. cuz它從來沒有引發異常,因爲我認爲這將。
我發現的一個解決方案是做一個檢查,看看這樣的記錄是否存在於表中執行更新..但我想知道是否有更好的方法來做到這一點。
謝謝。
謝謝。我會看看。不知道合併命令或upsert ..讓我試試。 – psj01
一致認爲,「合併」對此是恰當的工具。 – mathguy