Re: Problem with triggers - Mailing list pgsql-general

From Tom Lane
Subject Re: Problem with triggers
Date
Msg-id 24930.1276658060@sss.pgh.pa.us
Whole thread Raw
In response to Re: Problem with triggers  (Adrian Klaver <adrian.klaver@gmail.com>)
Responses Re: Problem with triggers
List pgsql-general
Adrian Klaver <adrian.klaver@gmail.com> writes:
> On 06/15/2010 02:01 PM, Sid wrote:
>> I am writing trigger function for validating values inserted into table. The
>> goal is to print user friendly messages when inserted value is wrong.

>> My question is: why do I get information about too long value before trigger
>> fires?

> The database is beating you to the validation.

People try this every few months :-(, but it's basically a dead-end idea.
A large majority of the things you might want to report an error for are
going to be rejected by the datatype input functions for the column
datatypes --- for example, you're not going to be able to "print a user
friendly message" on a bad timestamp, because that will be noticed long
before any trigger gets to fire.

You can either decide that the built-in error messages aren't so awful
after all, or do your data validation on the client side.

Or I guess you could lobotomize the database completely by making all
your fields be unlimited-length varchar so that there's no interesting
checking to be done.  But you really, really don't want to go there.

            regards, tom lane

pgsql-general by date:

Previous
From: Adrian Klaver
Date:
Subject: Re: Problem with triggers
Next
From: Jayadevan M
Date:
Subject: Re: Does enterprisedb.com down?