Наведемо скрипт мовиSQL Oracle,який створює таблиці БД.
CREATE TABLE DIAGNOZY (
ID NUMBER(4) CONSTRAINT "Povtor koda diagnoza" PRIMARY KEY
, NAZVANIE VARCHAR2(50) NOT NULL UNIQUE
, OPISANIE VARCHAR2(1700) NOT NULL);
CREATE TABLE DOLGNOST (
ID NUMBER(2) CONSTRAINT "Povtor koda dolzhnosti" PRIMARY KEY
, NAZVANIE VARCHAR2(20) NOT NULL UNIQUE
, ZARPLATA NUMBER(6) NOT NULL CONSTRAINT "Nevernaja z/p" CHECK(ZARPLATA > 0));
CREATE TABLE LEKARSTVA (
ID NUMBER(5) CONSTRAINT "Povtor koda Lekarstva" PRIMARY KEY
, NAZVANIE VARCHAR2(20) NOT NULL UNIQUE
, OPISANIE VARCHAR2(1000) NOT NULL);
CREATE TABLE CHELOVEK (
ID NUMBER(8) CONSTRAINT "Povtor koda Cheloveka" PRIMARY KEY
, FAMILIJA VARCHAR2(30) NOT NULL
, IMJA VARCHAR2(30)
, OTCHESTVO VARCHAR2(30)
, PASPORT VARCHAR2(15) NOT NULL UNIQUE);
CREATE TABLE SOTRUDNIK (
ID NUMBER(4) CONSTRAINT "Povtor koda Sotrudnika" PRIMARY KEY
, CHELOVEK_ID NUMBER(8) REFERENCES CHELOVEK(ID) ON DELETE CASCADE
, DOLGNOST_ID NUMBER(2) REFERENCES DOLGNOST(ID)
, KOGDA_USTROILSJA DATE DEFAULT SYSDATE NOT NULL
, KOGDA_UVOLILSJA DATE
, KONTAKTNYJ_TELEFON VARCHAR2(15)
, CONSTRAINT "Nevernaja data uvol'nenija" CHECK(KOGDA_UVOLILSJA > KOGDA_USTROILSJA));
CREATE TABLE ISTORIJA_BOLEZNEJ (
ID NUMBER(9) CONSTRAINT "Povtor koda istorii boleznej" PRIMARY KEY
, DIAGNOZ_ID NUMBER(4) REFERENCES DIAGNOZY(ID) ON DELETE CASCADE
, BOLNOJ_ID NUMBER(8) REFERENCES CHELOVEK(ID) ON DELETE CASCADE
, DATA_POSTUPLENIJA DATE DEFAULT SYSDATE NOT NULL
, OSMOTREVSHIJ_ID NUMBER(4) REFERENCES SOTRUDNIK("ID") ON DELETE CASCADE
, DATA_SMERTI DATE
, CONSTRAINT "Nevernaja data smerti" CHECK(DATA_SMERTI IS NULL OR DATA_SMERTI > DATA_POSTUPLENIJA));
CREATE TABLE LECHENIE (
VRACH_ID NUMBER(4) REFERENCES SOTRUDNIK(ID) ON DELETE CASCADE
, LEKARSTVO_ID NUMBER(5) REFERENCES LEKARSTVA(ID) ON DELETE CASCADE
, ISTORIJA_ID NUMBER(9) REFERENCES ISTORIJA_BOLEZNEJ(ID) ON DELETE CASCADE
, KOGDA DATE NOT NULL
, KOLICHESTVO NUMBER NOT NULL CONSTRAINT "Nevernoe kol-vo preparata" CHECK(KOLICHESTVO BETWEEN 1 AND 99)
, CONSTRAINT "Povtor kodov lechenija" PRIMARY KEY(ISTORIJA_ID, KOGDA));
CREATE TABLE LEKARSTVA_DIAGNOZY (
LEKARSTVO_ID NUMBER(5) REFERENCES LEKARSTVA(ID) ON DELETE CASCADE
, DIAGNOZ_ID NUMBER(4) REFERENCES "DIAGNOZY"(ID) ON DELETE CASCADE
, CONSTRAINT "Povtor sootvetstvija l/d" PRIMARY KEY(LEKARSTVO_ID, DIAGNOZ_ID));