SQL: Kontaktdatabase
2008-05-23 12:24 af Thomas Damgaard Nielsen -
Jeg har lige fået ny laptop. Derfor er jeg i gang med at udfase den gamle laptop. Dette involverer en del oprydningsarbejde. Under oprydningen faldt jeg over strukturen til en kontaktdatabase, jeg engang har lavet. Den er forholdsvis simpel og er lavet til eget brug. Jeg har imidlertid aldrig fået brugt den. Måske kan den være til gavn for andre. Derfor lægger jeg den op her.
Nedenstående er koden til databasestrukturen. Koden er hermed i public domain.
/******************** Add Table: contact ************************/
CREATE SEQUENCE contact_id_seq INCREMENT 1;
/* Build Table Structure */
CREATE TABLE contact
(
id INTEGER NOT NULL DEFAULT nextval('contact_id_seq'),
firstname TEXT NULL,
lastname TEXT NULL,
nickname TEXT NULL,
email1 TEXT NULL,
email2 TEXT NULL,
phone_home TEXT NULL,
phone_mobile TEXT NULL,
phone_work TEXT NULL,
fax TEXT NULL,
address TEXT NULL,
city TEXT NULL,
zipcode TEXT NULL,
country TEXT NULL,
website TEXT NULL,
notes TEXT NULL
);
/* Table Items: contact */
ALTER TABLE contact ADD CONSTRAINT pkcontact
PRIMARY KEY (id);
/******************** Add Table: contact_group ************************/
/* Build Table Structure */
CREATE TABLE contact_group
(
fk_contact_id INTEGER NOT NULL,
group_name TEXT NOT NULL
);
/* Table Items: contact_group */
ALTER TABLE contact_group ADD CONSTRAINT pkcontact_group
PRIMARY KEY (fk_contact_id, group_name);
/************ Add Foreign Keys to Database ***************/
/************ Foreign Key: fk_contact_group_contact ***************/
ALTER TABLE contact_group ADD CONSTRAINT fk_contact_group_contact
FOREIGN KEY (fk_contact_id) REFERENCES contact (id) ON UPDATE NO ACTION ON DELETE NO ACTION;
Koden er lavet til PostgreSQL 7.4, men burde også virke under nyere versioner. Databasen blev, så vidt jeg husker, designet i dbWrench. Nedenstående XML-fil burde kunne åbnes i dbWrench og derfra burde det være muligt at generere SQL-kode til andre databaser, f.eks. MySQL, MS SQL Server og MS Access.
Kommentarer
De 6 dummeste ideer indenfor IT-sikkerhed Hurtig adgang til applikationer med Katapult