function exception

From: "Wright, George" <George(dot)Wright(at)infimatic(dot)com>
To: <pgsql-novice(at)postgresql(dot)org>
Subject: function exception
Date: 2008-05-06 14:23:55
Message-ID: 51548D6D5BEB57468163194A8C1A0E98C6BA6A@MAGPTCPEXC02.na.mag-ias.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-novice

While writing a date validation function, I'm not sure which condition
to check for in the following exception handler.

CREATE OR REPLACE FUNCTION IsValidDateTime(timestamp with time zone)
RETURNS BOOLEAN AS $$

BEGIN

PERFORM CAST($1 AS TIMESTAMP WITH TIME ZONE);

RETURN TRUE;

EXCEPTION WHEN INVALID_DATETIME_FORMAT THEN

RETURN FALSE;

END

$$ LANGUAGE 'plpgsql';

If I call it this way: SELECT IsValidDateTime('2008-05-06 00:00:95');

I would expect it to return FALSE but it returns:

ERROR: date/time field value out of range: "2008-05-06 00:00:95"

Is there either a specific error code to use or is there a generic catch
all code? I didn't see anything better listed at
http://www.postgresql.org/docs/8.0/static/errcodes-appendix.html

Thanks.

Responses

Browse pgsql-novice by date

  From Date Subject
Next Message Tom Lane 2008-05-06 14:45:11 Re: function exception
Previous Message Tom Lane 2008-05-06 01:08:25 Re: Problem with Trigger