BARTKO Zoltan wrote:
> Folks,
>
> I am developing an app for PostgreSQL, entirely with stored functions
> (somewhat resembling the object-oriented approach. In fact it is not
> an app, just an API). All my functions return an integer value - 0 if
> the function was successful, another value otherwise.
>
> Until now, all parameter checking was done manually in the stored
> function (if param is null then return -8; end if; etc.) This makes
> things quite lengthy.
>
> I know about check constraints. However, upon error they throw an
> error message and abort the current transaction, So my question is:
> is there any possible way of throwing my own error messages upon a
> check constraint violation?
Not in v7.4 - there should be nested transactions available in 7.5 which
might allow this. In fact, I think the developer of nested transactions
is looking for testers at the moment - see the hackers list for details.
In actual fact, I'd be tempted to move the procedural API out of the
database. If all your access is to be through the API and not using SQL
there seems little point in embedding it inside PG.
--
Richard Huxton
Archonet Ltd