1

Temat: Trigger zrzucający do pliku

Witam, czy możliwe jest wykonanie takiego zadania:
Po aktualizacji danych tabeli X wykonuje się trigger, który zrzuca zawartość tej tabeli (lub jakis podzbiór informacyjny, z klauzuli WHERE) do pliku tekstowego (txt) tak jak to umożliwia pgAdminIII Query, poprzez funkcje "Eksportuj"? Załózmy że lokalizacja pliku txt byłaby stała.
Jeśli to nie jest mozliwe, to jak to zrobić w inny sposób? Chodzi o automat tworzacy ustrukturyzowany plik tekstowy, w którym pierwsz wiersz to kolumny tabeli X, a w kolejnych dane tych kolumn.

2

Odp: Trigger zrzucający do pliku

Pytanie jest jakie masz prawa w postgresie. Jak chcesz to zrobic z poziomu postgresa to mozesz uzyc COPY np

create table q as select generate_Series(1,10) as i; 


create or replace function test() returns trigger  as $$ 
begin 
execute 'copy (select '||NEW.i||') to ' || '''/home/postgres/plik'''; 
return new; 
end
$$ language plpgsql;                                                          

create trigger q_t  after insert on q for each row execute procedure test();

Jeśli nie masz praw postgresa to kopiowac mozesz chyba tylko na STDIN, i trza  bedzie pokombinować.
Inny wyjsciem moze byc na przykład uzycie jakiegos z untrusted procedural language.

Pomogłem?

Ostatnio edytowany przez rski (2008-04-16 19:09:26)

3

Odp: Trigger zrzucający do pliku

Dziękuję za pomoc, sprawdzę jak mi pójdzie, jestem nowicjuszem, więc pewnie to potrwa. Pozdrawiam