Search Postgresql Archives

SQL functions and triggers?

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

 



Hi all,

In the past, when writing trigger functions, I’ve always used pl/pgsql without giving it a second thought. Today I was modifying a database creation script that was originally intended for Firebird to work with Postgres and the example trigger procedures in there were very close to pure SQL.

Hence, I started rewriting them as SQL functions, but is that really possible? The return-type for trigger functions is usually ‘returns trigger’, which I don’t know how to translate to SQL. Next to that, what should the SQL statement inside the function be returning?

This got a bit puzzling and now I wonder whether this is possible at all? And if so, what’s the correct syntax?

Say I have the below, how to actually return a value of type trigger?:

create or replace function pUpdateFoo()
returns trigger
as $$
	update	Bar
	set		baz = baz + NEW.feep - OLD.feep
	where      foo = NEW.foo;
$$;

create trigger tUpdateFoo
after update on Foo
for each row
	execute procedure pUpdateFoo();

Glad to finally have a proper opportunity to apply PG again - it’s been too long!

Alban Hertroys
--
If you can't see the forest for the trees,
cut the trees and you'll find there is no forest.



-- 
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general





[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