Re: Is there any function to test for numeric ips?

From: Alvaro Herrera <alvherre(at)commandprompt(dot)com>
To: "Oliveiros C," <oliveiros(dot)cristina(at)marktest(dot)pt>
Cc: pgsql-sql(at)postgresql(dot)org
Subject: Re: Is there any function to test for numeric ips?
Date: 2009-12-11 16:28:47
Message-ID: 20091211162847.GD30833@alvh.no-ip.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

Oliveiros C, wrote:

> I've realized that, for ex, inet 'x.x.x.x' will fail if the input is not a numeric IP,
> is there any simple and direct way to somewhat trap that error and convert it to a false value that can be used
> in a WHERE clause?

Yes, you can create a plpgsql function with an exception block; return
false inside the exception, true otherwise. It looks something like

begin
perform $1::inet;
return true;
exception
when invalid_something then
return false
end;

I don't remember the exact syntax and the exception name but that should
get you started.

--
Alvaro Herrera http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support

In response to

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Oliveiros C, 2009-12-11 17:40:00 Re: Is there any function to test for numeric ips?
Previous Message Fernando Hevia 2009-12-11 16:26:00 Re: Is there any function to test for numeric ips?