From: | Bruce Momjian <bruce(at)momjian(dot)us> |
---|---|
To: | BillR <iambill(at)williamrosmus(dot)com> |
Cc: | pgsql-sql(at)postgresql(dot)org |
Subject: | Re: domains and serial |
Date: | 2006-12-30 02:09:49 |
Message-ID: | 200612300209.kBU29nU05745@momjian.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-sql |
BillR wrote:
> Is it not possible to set up a domain using this construct? I will have
> a lot of tables using integer and big integer types as primary key
> identifier fields. It would make things simpler if I can use the serial
> construct in a domain instead of using an int or bigint in the domain,
> and then change each field in each table requiring a serial or bigserial
> construct.
>
> I just tried to create a domain using a bigserial type.
>
> CREATE DOMAIN Identifier_DM AS bigserial;
>
> I received the error message:
>
> ERROR: type "bigserial" does not exist
> SQL state: 42704
>
> I tried to run this in both pgadminIII and in data architect 3.5.
Yea, that isn't going to work because if you did that, all columns
created with that domain name would have the same default sequence.
See:
test=> CREATE TABLE test(x bigserial);
NOTICE: CREATE TABLE will create implicit sequence "test_x_seq" for serial column "test.x"
CREATE TABLE
test=> \d test
Table "public.test"
Column | Type | Modifiers
--------+--------+--------------------------------------------------
x | bigint | not null default nextval('test_x_seq'::regclass)
I don't see how we would ever get that working for domains. The best we
could do would be to have each new domain reference create a new
sequence and default string, but then you just have the bigserial
behavior in a domain, which doesn't seem worth it.
--
Bruce Momjian bruce(at)momjian(dot)us
EnterpriseDB http://www.enterprisedb.com
+ If your life is a hard drive, Christ can be your backup. +
From | Date | Subject | |
---|---|---|---|
Next Message | A. R. Van Hook | 2006-12-30 17:43:01 | or function |
Previous Message | Andrew Dunstan | 2006-12-29 17:43:09 | Re: Fwd: I would like to alter the COPY command |