Re: Use of reference table ('look-up-table') and FK constraint
| От | Josh Berkus |
|---|---|
| Тема | Re: Use of reference table ('look-up-table') and FK constraint |
| Дата | |
| Msg-id | 200210151027.51235.josh@agliodbs.com обсуждение исходный текст |
| Ответ на | Use of reference table ('look-up-table') and FK constraint (Charles Hauser <chauser@duke.edu>) |
| Ответы |
Re: Use of reference table ('look-up-table') and FK constraint
|
| Список | pgsql-sql |
Charles,
CREATE TABLE phone_types (type VARCHAR(10) NOT NULL PRIMARY KEY
);
INSERT INTO phone_types
VALUE ( 'Work' );
INSERT INTO phone_types
VALUE ( 'Home' );
etc ...
CREATE TABLE phone ( phone_id Identifier_type IDENTITY, phone_number varchar(20) NOT
NULL, community_id numeric(12) NOT NULL, type varchar(10) NULL REFERENCES
phone_types(type)ON
DELETE SET NULL );
Simple, neh? And it lets you add new types, at any time, without re-building
the table. IMHO, the guy who built the database you're converting was
either a total hack or working around some serious platform shortcomings.
BTW, are you sure you want phone.type to be NULLable? Were it me, I would
make it required, in which case the declaration would be:
type varchar(10) NOT NULL REFERENCES
phone_types(type)
--
-Josh BerkusAglio Database SolutionsSan Francisco
В списке pgsql-sql по дате отправления: