我想更新一個表中某一列的插入值,但只有當它與另一列的值相匹配時才能更新。 所以這兩條記錄都在同一個表中,但我們只想在test_lead_id與某些值對應時更新test_id這個值。 我正在嘗試這樣做,但沒有成功....
。`CREATE OR REPLACE TRIGGER Test_trigger
BEFORE INSERT ON "test_list"
FOR EACH ROW BEGIN
如果 :old.test_id = '1000' then
:new.test_id := '2000'
WHEN test_lead_id in ('150','151') 。
END IF;
END。
`
希望得到任何幫助。 非常感謝
。uj5u.com熱心網友回復:
像這樣嗎?
像這樣嗎?
CREATE OR REPLACE TRIGGER Test_trigger
在INSERT之前
ON "test_list"
FOR EACH ROW
BEGIN[/span
如果 :new.text_lead_id in ('150'/span>, '151')
AND :old.test_id ='1000'
THEN
:new.text_id := '2000'/span>。
END IF;
END。
uj5u.com熱心網友回復:
插入陳述句沒有old值。 試試這個:
CREATE OR REPLACE TRIGGER test_trigger
BEFORE INSERT ON "test_list"
FOR EACH ROW
WHEN (NEW.test_lead_id in ('150'/span>,'151'/span>)
BEGIN[/span
如果 :new.test_id = '1000' 那么 :new.test_id := '1000'
:new.test_id := '2000'。
END IF;
END。
或者
CREATE OR REPLACE TRIGGER Test_trigger
BEFORE INSERT ON "test_list"
FOR EACH ROW
WHEN (NEW.test_lead_id in ('150'/span>,'151'/span>) and new.test_id = '1000')
BEGIN
:new.test_id := '2000'。
END。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/308145.html
標籤:
上一篇:Oraclesql查詢:GROUPBY,ORDERBY和洗掉每個ID的最舊記錄
下一篇:C++字串編碼轉換
