Thiemo Kellner, NHC Barhufpflege wrote: > > Why you don't create query like > > > > EXECUTE 'SELECT xxx FROM TAB WHERE A = $1.x AND B = $1.y' USING NEW; > > I shall try. This would be the direct way, but I doubt the placeholder > $1 can be a record. It could be written without refering to any individual column: IF EXISTS (select 1 from tablename where tablename.* is not distinct from NEW) THEN -- do something END IF; But since the select cannot see not-yet-committed changes from other sessions, such a trigger cannot reliably detect duplicates, unless you make sure that there are no concurrent writes to the table. Best regards, -- Daniel Vérité PostgreSQL-powered mailer: http://www.manitou-mail.org Twitter: @DanielVerite