鉴于此代码(伪)
MERGE INTO ...
(SELECT ... FROM ...) ...
ON (...)
WHEN NOT MATCHED THEN
INSERT (...) VALUES (...);
//This is Oracle Apex code
apex_application.g_unrecoverable_error := true;
htp.init();
owa_util.redirect_url('f?p=111:11:&APP_SESSION.::NO:::');
如何添加一个条件,当它与它不匹配时,我需要运行这行代码:
apex_application.g_notification := 'My error';
我不知道如何使其发挥作用。我尝试了一些ELSE和其他WHEN语句,但它似乎不起作用。
答案 0 :(得分:1)
据我所知,您将无法以这种方式扩展MERGE语句。您可以计算在之前和之后插入的表的计数,以确定是否有任何行落入NOT MATCHED部分并插入。
使用该计数将您的逻辑放在IF语句中。
答案 1 :(得分:0)
取决于MERGE
ON cond
声明
UPDATE
DELETE
和MATCHED
INSERT
NOT MATRCHED
您的顶级代码不能成为MERGE
声明的一部分。你必须为它找出一个不同的策略。