From: | Stephan Szabo <sszabo(at)megazone23(dot)bigpanda(dot)com> |
---|---|
To: | Charles Hauser <chauser(at)duke(dot)edu> |
Cc: | PSQL_list <pgsql-sql(at)postgresql(dot)org> |
Subject: | Re: Use of reference table ('look-up-table') and FK constraint |
Date: | 2002-10-16 17:26:22 |
Message-ID: | 20021016102409.C96229-100000@megazone23.bigpanda.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-sql |
On 16 Oct 2002, Charles Hauser wrote:
> In fits and starts I am working through converting a sybase schema ->
> postgres and am hoping to gain some insight on the use of reference
> tables ('look-up-table') and FK constraints.
>
> In the example below I believe the sybase RULE Phone_type_rule is used
> to restrict input, so that the only values which can be inserted or
> updated into Phone have to be one of ('work', 'home', 'fax', 'mobile',
> 'lab', 'unknown').
>
> How would this be accomplished using a look-up or reference table::FK
> constraint combination?
>
> CREATE RULE Phone_type_rule
> AS @col IN ('work', 'home', 'fax', 'mobile', 'lab', 'unknown')
> go
>
> CREATE TABLE Phone (
> phone_id Identifier_type IDENTITY,
> phone_number varchar(20) NOT NULL,
> community_id numeric(12) NOT NULL,
> type varchar(10) NULL
> )
I think something like this:
create table phone_types (
typename varchar(10) primary key;
);
-- insert types into phone_types
create table phone(
-- ...
type varchar(10) references phone_types
);
From | Date | Subject | |
---|---|---|---|
Next Message | Vincent Stoessel | 2002-10-16 17:43:07 | Quick contraint question |
Previous Message | Charles Hauser | 2002-10-16 17:14:59 | Use of reference table ('look-up-table') and FK constraint |