Take the 2-minute tour ×
Database Administrators Stack Exchange is a question and answer site for database professionals who wish to improve their database skills and learn from others in the community. It's 100% free, no registration required.

I am studying ways to implement audit tables to my PostgreSQL database and would like to know if it is possible to make a trigger for the data to be written to a table in a database other than the source database.

share|improve this question
add comment

1 Answer

You can do that with the help of the additional module dblink. Install once per database (the one where the trigger is executed):

CREATE EXTENSION dblink;

You need superuser privileges (in the database cluster where the trigger runs) for some of the involved functionality.

Since you want to write to the external database, you will probably want to use dblink_exec(). The manual has code examples.

Or try a search here for more dblink examples.

Note that you cannot ROLLBACK what you have written with dblink to an external database. A local exception after the external write does not undo what's written in the foreign database.

share|improve this answer
    
Thank you, i'll read more about it and perform some tests. –  Rafa Marques Nov 28 '12 at 17:55
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.