gpt4 book ai didi

oracle - 防止更新 oracle db 中的多行

转载 作者:行者123 更新时间:2023-12-04 03:41:15 24 4
gpt4 key购买 nike

我在最新的补丁中搞砸了。更新条件不完整,我更新了多行一个意外。

我现在想做的是通过为一旦我尝试更新多个表就会导致异常行。可选地使用特定参数。

在 oracle 11.2 中有没有办法做到这一点?

最佳答案

您可以使用复合触发器来完成此操作:

CREATE OR REPLACE TRIGGER TABLE1_FAIL_MULT_UPDATES_TRG
FOR UPDATE ON TABLE1
COMPOUND TRIGGER
nUpdate_count NUMBER;

BEFORE STATEMENT IS
BEGIN
nUpdate_count := 0;
END BEFORE STATEMENT;

BEFORE EACH ROW IS
BEGIN
IF UPDATING THEN
nUpdate_count := nUpdate_count + 1;

IF nUpdate_count > 1 THEN
RAISE_APPLICATION_ERROR(-20100, 'Attempted to update more than 1 row');
END IF;
END IF;
END BEFORE EACH ROW;

END TABLE1_FAIL_MULT_UPDATES_TRG;

You can read further on compound triggers here .

祝你好运。

关于oracle - 防止更新 oracle db 中的多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33541868/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com