From: | Eric Schwarzenbach <eric(at)blackbrook(dot)org> |
---|---|
To: | pgsql-general(at)postgresql(dot)org |
Subject: | Re: Domain check constraint not honored? |
Date: | 2015-10-29 18:06:26 |
Message-ID: | 56326022.2020005@blackbrook.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Thank you! (Slapping head)
Your regexp seems to do the trick.
On 10/29/2015 01:49 PM, Rob Sargent wrote:
> On 10/29/2015 11:41 AM, Eric Schwarzenbach wrote:
>> I have created a custom type as a domain based on text, which adds a
>> check constraint using a regexp to limit it to containing digits and
>> '.'. However I am finding I can add values with other characters to a
>> column of this type. Is this to be expected for some reason?
>>
>> Or alternately, did I define the constraint wrong somehow? It is
>> defined thus:
>>
>> CREATE DOMAIN hierpath AS text
>> CHECK(
>> VALUE ~ '[0-9.]+'
>> );
>>
>> Checking the docs I'm pretty sure the '.' doesn't need escaping but I
>> also tried a test leaving it out ( '[0-9]+') and the result is the
>> same. It lets me store letters in a column defined to be of this type.
>>
>> The version() function tells me
>> "PostgreSQL 9.4.5 on x86_64-unknown-linux-gnu, compiled by gcc
>> (Ubuntu 4.8.2-19ubuntu1) 4.8.2, 64-bit"
>>
>> Thanks,
>> Eric
>>
>>
> I think you regexp is too weak. So long as the value has a digit or
> period, it's good.
> '^[0-9.]+$' might work
From | Date | Subject | |
---|---|---|---|
Next Message | Adrian Klaver | 2015-10-29 18:13:02 | Re: does pg_dump get delayed if I have a loop that does continuous insertions |
Previous Message | Tom Lane | 2015-10-29 18:04:43 | Re: mysql_fdw trouble |