編輯建立觸發程式的安裝程序檔
如果您的應用程式來源表格上有 BEFORE INSERT 觸發器,而且您將從該來源表格將資料插入對應的新表格中,您必須在安裝命令檔中的每個 INSERT 敘述句將資料插入新表格之前,決定是否要觸發該觸發器。
例如,NEW_EVALUATION_TRIGGER (建立於「教學課程:建立觸發程式,為插入前的資料列產生主索引鍵」中) 會在資料列插入 EVALUATIONS 表格之前觸發。觸發器會使用 EVALUATIONS_SEQUENCE 產生該列主索引鍵的唯一號碼。
來源「評估」表格會填入主鍵。如果您不想讓安裝程序檔將新主索引鍵值放在新的 EVALUATIONS 表格中,則必須編輯安裝程序檔中的 CREATE TRIGGER 陳述式,如下所示:
CREATE OR REPLACE
TRIGGER NEW_EVALUATION_TRIGGER
BEFORE INSERT ON EVALUATIONS
FOR EACH ROW
BEGIN
IF :NEW.evaluation_id IS NULL THEN
:NEW.evaluation_id := evaluations_sequence.NEXTVAL
END IF;
END;
此外,如果序列的目前值不是大於主索引鍵資料欄中的最大值,則您必須讓它變大。
您可以在工作表或任何文字編輯器中編輯安裝命令檔。
下列步驟是編輯安裝程序檔的兩種替代方法:
-
變更來源檔案中的觸發器定義,然後重新建立安裝腳本。
如需有關變更觸發程式的資訊,請參閱變更觸發程式。
-
在執行資料安裝腳本前停用觸發器,然後在之後重新啟用。
如需有關停用與啟用觸發程式的資訊,請參閱停用與啟用觸發程式。
另請參閱:「建立觸發程式」