sql - Oracle Trigger on Insert or Delete or Update -
trying create oracle trigger runs after table updated in way. i've been googling morning , came this:
create or replace trigger gb_qty_change after update or insert or delete on f_item_store each row declare v_qty v_ad_on_hand%rowtype; v_isbn td_item_description.td_identifier%type; begin delete gb_transaction gb_tide = :new.itst_item_tide_code; select td_identifier v_isbn td_item_description td_tide = :new.itst_item_tide_code; select * v_qty v_ad_on_hand itst_item_tide_code = :new.itst_item_tide_code; insert gb_transaction(gb_tide, gb_isbn, gb_used_on_hand, gb_new_on_hand) values(:new.itst_item_tide_code, v_isbn, v_qty.used_on_hand, v_qty.new_on_hand); end; /
i'm trying keep single record per tide_code in new table.
v_ad_on_hand view pulls inventory count. gb_transaction new table i'm logging these events
comparing other peoples code looks should run i'm getting "warning: trigger created compilation errors."
the problem, believe :new designations delete trigger. there is, after all, no new value record expunged. can access :old values on delete.
if section trigger operation, can this.
create or replace trigger gb_qty_change after update or insert or delete on f_item_store each row declare v_qty v_ad_on_hand%rowtype; v_isbn td_item_description.td_identifier%type; begin if inserting or updating ... insert existing code else ... similar :old values deleting case end if; end; /
incidentally, helpfull if tell error is, not had one. if compiling via sql*plus script, after forward slash call compile trigger after "end;" statement, add line says:
show errors trigger your_trigger_name;
Comments
Post a Comment