Importuj wyzwalacze PostgreSQL podczas uruchamiania. Hibernować
Mam pewną przechowywaną funkcję i wyzwalacze w moim PostgreSQL. Na przykład. :
CREATE OR REPLACE FUNCTION log_function() RETURNS TRIGGER AS $logger$
BEGIN
IF (TG_OP = 'DELETE') THEN
INSERT INTO logger SELECT 'D', now(), user, OLD.*;
RETURN OLD;
END IF;
RETURN NULL;
END;
$logger$ LANGUAGE plpgsql;
I wywołać:
CREATE TRIGGER logging_trigger
AFTER INSERT OR UPDATE OR DELETE ON some_entity
FOR EACH ROW EXECUTE PROCEDURE log_function();
I chciałbym zaimportować ten kod po każdym wdrożeniu. (Mam<property name="hibernate.hbm2ddl.auto" value="create-drop"/>
)
Myślę, że jest to niemożliwe dla funkcji, ponieważ jego plpgsql, ale dla wyzwalaczy byłoby świetnie. Próbowałem dodanych wyzwalaczy do import.sql, ale mamorg.postgresql.util.PSQLException: ERROR: syntax error at end of input
I nie chcę przenosić tego kodu na poziom Java.
Jakieś pomysły?