0

挿入が実行されたときに実行されるトリガー関数を作成しようとしています。条件は、id が既に存在する場合、time_create は time_dead である必要があります。

 CREATE function archive_temp() returns trigger as '
 begin
   insert into  temporary_archive
  values
 (
 OLD.id,
   OLD.time_create,
   OLD.time_dead,
    OLD.fname,
    current_user,
    now(),
      now(),
  TG_OP
    );
     return null;
    end;
   ' LANGUAGE 'plpgsql';
     -----------------------------

CREATE TRIGGER archive_temps 
AFTER DELETE OR UPDATE 
on temporary_object
FOR EACH ROW
DECLARE 
temporary_archive temporary_object.id%type;
begin
if inserting then 
select id into temporary_archive
from temporary_object
where id = :old.id;
if temporary_archive is not null then

 EXECUTE PROCEDURE archive_temps();
 end if;
 end if;ins
4

1 に答える 1