Thread: Does "constraint" and "check" work in 6.3.2 ?

Does "constraint" and "check" work in 6.3.2 ?

From
Constantin Teodorescu
Date:
I am planning a new release to PgAccess (mainly bug fixes) and I'm
wondering if "constraint" and "check" are working !
I am using PostgreSQL 6.3.2 and this example from man create_table is
not working for me !

Please reply as soon as possible, so I could release this version prior
to 6.4 Pg release.

testdb=> create table emppay (name text not null, wage float4 default
10.00)  constraint empcon check (wage > 5.30 and wage <= 30.00), check
(name <> '');
ERROR:  parser: parse error at or near "constraint"

???!????

--
Constantin Teodorescu
FLEX Consulting Braila, ROMANIA

Re: [INTERFACES] Does "constraint" and "check" work in 6.3.2 ?

From
"Thomas G. Lockhart"
Date:
> I'm wondering if "constraint" and "check" are working !
> I am using PostgreSQL 6.3.2 and this example from man create_table is
> not working for me !
> testdb=> create table emppay (name text not null, wage float4 default
> 10.00)  constraint empcon check (wage > 5.30 and wage <= 30.00), check
> (name <> '');
> ERROR:  parser: parse error at or near "constraint"

The syntax changed slightly (in v6.3 I recall) to conform to SQL92. The
constraint clauses moved to inside the column declaration parens. Try:

create table emppay (
    name text not null,
    wage float4 default 10.00,
    constraint empcon
        check (wage > 5.30 and wage <= 30.00),
    check (name <> '')
);

                   - Tom

Re: [INTERFACES] Does "constraint" and "check" work in 6.3.2 ?

From
"Jose' Soares"
Date:
Hi Constantin,

This is a syntax problem, there are two kinds of constraints (table and
column constraints)
and both of them must be defined inside ( ) not outside:

create table emppay (
        name text not null check (name <> ''),                  --column
constraint definition
        wage float4 default 10.00,
        constraint empcon check (wage > 5.30 and wage <= 30.00) --table
constraint definition
        );
CREATE

       Jose'

Constantin Teodorescu wrote:
>
> I am planning a new release to PgAccess (mainly bug fixes) and I'm
> wondering if "constraint" and "check" are working !
> I am using PostgreSQL 6.3.2 and this example from man create_table is
> not working for me !
>
> Please reply as soon as possible, so I could release this version prior
> to 6.4 Pg release.
>
> testdb=> create table emppay (name text not null, wage float4 default
> 10.00)  constraint empcon check (wage > 5.30 and wage <= 30.00), check
> (name <> '');
> ERROR:  parser: parse error at or near "constraint"
>