Search Postgresql Archives

Restore - disable triggers - when they fired?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Dear Members!

I saw in PGAdmin 3/4 that pg_restore have an option "disable triggers".

Because we need to move some databases in the near future I have to know about the meaning of this option.

I wrote a table with an BEFORE UPDATE trigger: 

create table tr_test
(
id integer not null primary key,
value1 varchar(100),
value2 varchar(100)
);

insert into tr_test values(1, 'a', 'a');
insert into tr_test values(2, 'b', 'b');

CREATE OR REPLACE FUNCTION tfbu_tr_test()
  RETURNS trigger AS
$BODY$
begin
    new.value2 = cast(current_timestamp as varchar(30));
    RETURN NEW;
end;
$BODY$
  LANGUAGE plpgsql VOLATILE
  COST 100;


 CREATE TRIGGER tbi_tr_test
  BEFORE INSERT
  ON tr_test
  FOR EACH ROW
  EXECUTE PROCEDURE public.tfbu_tr_test();

insert into tr_test values(3, 'c', 'c');
select * from tr_test;


and I tried to dump and restore in PGAdmin IV.

The dumped data is same as I read after restore.

The pg_restore log shows me that triggers and indexes created after data copy.

At this point I confused in "disable triggers" option.

When it would be useful?

Firstly I supposed that data copy somehow could start the triggers - but how?

Which triggers? Or how they fired with this order?

Or they remains as disabled AFTER the backup for next, by hand manipulations?

So please light my mind a little!

Thank you!

Regards
dd

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]

  Powered by Linux