oracle中update trigger中嵌入select語句出錯

2023-02-06 05:40:24 字數 770 閱讀 5540

1樓:匿名使用者

oracle 的 for each row 觸發器, 不允許在 觸發器裡面,

select / update / delete 自己這個表。

你的觸發器是

before insert or updateon uup_company_baseinfofor each row

但是觸發器**裡面有

select ... from uup_company_baseinfo

是不允許的。

因此要抱錯。

2樓:匿名使用者

select count(*) into c_num from uup_company_baseinfo t

where nvl(t.is_deleted,'0')='0' and t.active_mark='0'

and t.status_code='20' and t.bsp_company_code=:new.bsp_company_code;

你看看可不可以把下上面select 的語句改成

if nvl(old.is_deleted , '0') = '0' and old.active_mark = '0' and old.

status_code = '20' .....then

c_num = 1;

end if;

3樓:

如果僅僅是查重,最好建立unique index 讓資料庫幫你維護唯一性,而不是用trigger。

oracle 缺失關鍵字,在Oracle中執行一個查詢語句總是報缺少關鍵字

case when 不能那麼用的。where org term unit y andmonths between mat date,org date 12 org term or org term unit m andmonths between mat date,org date org term...

oracle中的databaselink如何使用

sql create database link mydblink 2 connect to test identified by test123 3 using description 4 address list 5 address protocol tcp host 192.168.1.210...

oracle 中select into是什麼意思

這是一個複製表資料的操作。建立aaa表,這裡沒有定義aaa表的欄位以及型別,而是用select from bbb,這就是把bbb裡面所有的欄位包含型別以及資料都複製到aaa中去。那麼就建立了一張和bbb表一樣的aaa表。包括資料等都一樣。只是不包含bbb表中的主鍵以及約束等。這個地方是不能使用sel...