mutating-table

    0熱度

    2回答

    我有兩個表main和hist。我想,只要它的日期時間列修改爲hist從main表複製一行,並重新在main到null修改colums,除了一列。不過,我得到突變觸發錯誤。請幫忙。 下面是兩個觸發器, CREATE OR REPLACE TRIGGER INS_HIS AFTER UPDATE OF datetime ON main FOR EACH ROW INSERT INTO H

    0熱度

    1回答

    我有一個要求,每當數據插入到表中但是我碰到「錯誤ORA-04091:表測試時,通過插入後觸發器來調用存儲過程。 EMP變異,觸發/功能可能看不到它「。我明白這個錯誤背後的原因,但我怎樣才能通過複合觸發器克服這一點,而不會影響程序? create TABLE emp( id NUMBER(4), emp_name VARCHAR2(30), dept_name VARCHAR2(10));

    0熱度

    1回答

    我有一個表PRODUCTS對象的數據庫Product其中PRIMARY KEY是EAN字段。每次更新行時,我想調用新對象Product的成員函數修改。我提出這個觸發: CREATE OR REPLACE TRIGGER SHOW_PROFIT_PERCENTAGE AFTER UPDATE ON PRODUCTS FOR EACH ROW DECLARE P Product; BE

    0熱度

    2回答

    我要實現以下觸發: 票的總數,每個大選年,選舉的1960年後,不超過538 然而,我得到了突變表錯誤。我明白爲什麼我會得到這個錯誤,但我看不到另一個解決方案(帶觸發器)。我可以創建一個臨時表,但我只想要觸發器。 這裏是代碼: CREATE OR REPLACE TRIGGER restrict_election_votes after INSERT OR UPDATE ON election

    0熱度

    1回答

    我遇到了不斷變化的觸發器問題。觸發器的目標是更新文件路徑時更改字符串的一部分。這是我到目前爲止,它編譯得很好。 CREATE OR REPLACE TRIGGER TAU_ATTACHMENTS AFTER UPDATE ON ATTACHMENTS FOR EACH ROW BEGIN IF :new.PATH LIKE 'file://Y:%' THEN UPDAT

    0熱度

    1回答

    我試圖創建一個觸發器,但是我已經瞭解到我無法將它設計爲在我第一次嘗試中,我將在下面顯示它。這會導致一個'變異表'錯誤,因爲它正在被修改時從表中選擇。實際上,在一次只插入一條記錄時實際上不會導致此錯誤,但是當我一次插入多條記錄時,它會發生此錯誤。 觸發器的用途是計算表中客戶等於要插入的客戶的記錄數,並將新的order_num值設置爲count + 1。我也有一個由觸發器設置的公鑰值,它是從一個序列中

    0熱度

    1回答

    我有下面的代碼,基本上需要添加一個列表作爲一個項目更大的列表。所以NewBoardsList應該包含所有在moves_generate_board函數中生成的板子。問題是我在Prolog中得到一個False。任何幫助? moves((Colour,_),Board,NewBoardsList):- other_colour(Colour,OtherColour), find

    0熱度

    2回答

    我有以下方案(簡化的)Oracle數據庫: Projects Params ------------- ----------- PROJ_ID SCODE PARAM_ID PARAM_TYPE PROJ_ID PARAM_VALUE 1000 123 5000 4614 1000 '00' 1001 124 5001 4610 1000

    1熱度

    1回答

    我在Oracle中有4個表格:hotel,tourist,stay,。 stay表涉及住宿在酒店的遊客,leave表存儲遊客離開酒店的日期的信息。 CREATE TABLE hotel ( id NUMBER(5), name VARCHAR2(50), tenants_amount NUMBER(3) ); ALTER TABLE hotel ADD CONST

    0熱度

    1回答

    CREATE OR REPLACE TRIGGER Testtriger after insert ON table2 referencing new as new old as old for each row declare flagtemp varchar2(1); begin select flag into flagtemp from tabl