我想在oracle中創建一個觸發器,它將檢測重複的已插入主鍵並通過添加前綴字符例如'P_'來重命名新鍵。 如果有人知道這個問題的優雅解決方案,我會很高興看到答案:)。在插入cmd之前在oracle中創建防止重複鍵的觸發器
我開始寫水木清華這樣的:
create or replace
TRIGGER t1_trigger
BEFORE INSERT
ON T1
DECLARE selected_id varchar2(10);
BEGIN
SELECT id INTO selected_id FROM T1 WHERE id = :new.id;
IF (selected_id NOT NULL)
THEN INSERT INTO T1 VALUES('p_');
END IF;
END;
如果你已經有記錄'id = 200'和'id = p_200'並且試圖用'id = 200'插入新記錄,你會怎麼做? –
我已經考慮過這個問題了,我只是想讓這個問題變得簡單,並且不考慮這個問題,這是一個大學任務,所以我在實施中有一個限制。 – Ataman