Appendice A – Comandi SQL per la creazione del database

Creazione dell’utente

(Per creare un utente bisogna connettersi ad Oracle come amministratore. Per default il nome dell’utente amministratore è SYSTEM, mentre la sua password è MANAGER)

CREATE USER "UTENTE"

IDENTIFIED BY "password"

DEFAULT TABLESPACE "USER_DATA"

TEMPORARY TABLESPACE "USER_DATA"

PROFILE DEFAULT

ACCOUNT UNLOCK;

GRANT "CONNECT" TO "UTENTE";

GRANT "RESOURCE" TO "UTENTE";

GRANT UNLIMITED TABLESPACE TO "UTENTE";

ALTER USER "UTENTE" DEFAULT ROLE ALL;

Cluster CART_CLU

CREATE CLUSTER CART_CLU (

NPRAT NUMBER(6,0),

ANNO NUMBER(4,0)

) INDEX;

Cluster SPATIAL_CLU

CREATE CLUSTER SPATIAL_CLU (

OGGETTO NUMBER(2,0),

RELX NUMBER(2,0),

RELY NUMBER(2,0)

) INDEX;

Indice sul cluster CART_CLUCREATE INDEX "PK_CART_CLU" ON CLUSTER "CART_CLU";Tabella ASSOCIAZIONECREATE TABLE ASSOCIAZIONE (

NPRAT NUMBER(6,0) NOT NULL,

ANNO NUMBER(4,0) NOT NULL,

CODFISC VARCHAR2(16) NOT NULL,

COGNOME VARCHAR2(30),

NOME VARCHAR2(20),

DATA_NASC DATE,

CONSTRAINT PK_ASSOC UNIQUE (CODFISC),

CONSTRAINT UNQ_ASSOC UNIQUE (NPRAT, ANNO)

) CLUSTER CART_CLU (NPRAT, ANNO);

Tabella DENUNCE

CREATE TABLE DENUNCE ( NPRAT NUMBER(6,0) NOT NULL, ANNO NUMBER(4,0) NOT NULL, MALATTIA VARCHAR2(30) NOT NULL, DATA DATE, CONSTRAINT PK_DENUNCE PRIMARY KEY (NPRAT, ANNO, MALATTIA) USING INDEX,

CONSTRAINT PK_DENASS FOREIGN KEY (NPRAT, ANNO) REFERENCES ASSOCIAZIONE(NPRAT, ANNO))

CLUSTER CART_CLU (NPRAT, ANNO);

 

Tabella ESAMI

CREATE TABLE ESAMI (

CODICE VARCHAR2(7) NOT NULL CONSTRAINT PK_ESAMI PRIMARY KEY USING INDEX,

NOME_ESAME VARCHAR2(150) NOT NULL,

DESCRIZIONE VARCHAR2(700) NULL,

TARIFFA NUMBER NULL,

NOTA CHAR NULL,

CONSTRAINT CHECK1 CHECK (NOTA='R' OR NOTA='H' OR NOTA='*')

);

Tabella PAZIENTICREATE TABLE PAZIENTI( CODFISC CHAR(16) NOT NULL CONSTRAINT PK_PAZIENTI PRIMARY KEY USING INDEX,

LUOGO_NASC VARCHAR2(35),

SESSO CHAR CHECK (SESSO='M' OR SESSO='F'),

LUOGO_RES VARCHAR2(35),

INDIRIZZO VARCHAR2(60),

PROV_RES VARCHAR2(2),

REGIONE VARCHAR2(21) CHECK (REGIONE IN (

'SICILIA', 'SARDEGNA', 'CALABRIA',

'BASILICATA', 'PUGLIA', 'CAMPANIA',

'MOLISE', 'LAZIO', 'ABRUZZO', 'UMBRIA',

'MARCHE', 'TOSCANA', 'EMILIA ROMAGNA',

'LIGURIA', 'PIEMONTE', 'LOMBARDIA',

'VENETO', 'FRIULI VENEZIA GIULIA',

'TRENTINO ALTO ADIGE', 'VALLE D''AOSTA')),

TEL VARCHAR2(20),

PROV_NASC VARCHAR2(2),

PADRE VARCHAR2(20),

PROFESS VARCHAR2(30),

STATO_CIV VARCHAR2(15),

NOME_CF VARCHAR2(20),

COGNOME_CF VARCHAR2(30),

DATA_NASC_CF DATE,

LUOGO_NASC_CF VARCHAR2(35)

);

Tabella ACCETTAZIONI

CREATE TABLE ACCETTAZIONI( NPRAT NUMBER(6,0) NOT NULL, ANNO NUMBER(4,0) NOT NULL, NMODULO NUMBER(4,0), DATA DATE, MEDICO VARCHAR2(50), DIAGNOSI VARCHAR2(240), ESAME_OB VARCHAR2(1600),

ANAMNESI VARCHAR2(2000),

CONSTRAINT PK_ACCET PRIMARY KEY(NPRAT, ANNO, NMODULO)

USING INDEX);

Tabella DIARIO_CLINICOCREATE TABLE DIARIO_CLINICO( NPRAT NUMBER (6,0) NOT NULL, ANNO NUMBER(4,0) NOT NULL, NMODULO NUMBER(3,0) NOT NULL,

COD_ESAME VARCHAR2(7),

DATA_ESAME DATE,

NOTE VARCHAR2(200),

IMMAGINE VARCHAR(50),

CODREF NUMBER(7,0) NOT NULL CONSTRAINT PK_DIARIO PRIMARY KEY USING INDEX ,

CONSTRAINT FK_DIAACC FOREIGN KEY (NPRAT, ANNO, NMODULO)

REFERENCES ACCETTAZIONI (NPRAT, ANNO, NMODULO))

CLUSTER CART_CLU (NPRAT, ANNO);

Tabella SPATIAL_REL

CREATE TABLE SPATIAL_REL ( VIID NUMBER(7,0), OGGETTO NUMBER(2,0), RELX NUMBER(3,0), RELY NUMBER(3,0), CONSTRAINT PK_SPREL PRIMARY KEY(VIID, OGGETTO) USING INDEX );

Tabella GEOMORPHCREATE TABLE GEOMORPH ( VIID NUMBER(7,0) NOT NULL, AREA NUMBER(10,4) NULL, DENSITA NUMBER(10,4) NULL, ASIMMETRIA NUMBER(10,6) NULL, ORIENTAZIONE NUMBER(10,7) NULL, SPREADNESS NUMBER(10,5) NULL, UNIFORMITA NUMBER(10,5) NULL,

CONVESSITA NUMBER(1,0) NULL,

FILEBMP VARCHAR2(30) NULL,

SIZEX NUMBER(4,0) NULL,

SIZEY NUMBER(4,0) NULL,

CONSTRAINT PK_VIID UNIQUE (VIID)

);

Tabella CANONICICREATE TABLE CANONICI ( VIID NUMBER(2,0) NOT NULL, FILEBMP VARCHAR2(50) NOT NULL,

DESCRIZIONE VARCHAR2(70) NOT NULL,

SIZEX NUMBER(4,0) NOT NULL,

SIZEY NUMBER(4,0) NOT NULL,

CONSTRAINT PK_CAN UNIQUE (VIID)

);

Tabella RISULTATI
CREATE TABLE RISULTATI ( VIID NUMBER(7,0) NOT NULL, SX NUMBER(10,5) NULL, SY NUMBER(10,5) NULL,

DISTANZA NUMBER(10,5) NULL

);

Inserimento nella tabella canonici dei valori relativi alle immagini usate nell’applicazione

insert into canonici values(1,'polmonedx.bmp','polmone destro',92 ,138);

insert into canonici values(2,'polmonesx.bmp','polmone sinistro',92,138);

insert into canonici values(3,'cavasup.bmp','vena cava superiore',12,14);

insert into canonici values(4,'vbrdx.bmp','vena branchio cefalica destra',10,14);

insert into canonici values(5,'confbr.bmp','confluenze vene branchio',32,27);

insert into canonici values(6,'vbrsx.bmp','vena branchia cefalica sinistra',35,13);

insert into canonici values(7,'cuore.bmp','cuore',70,50);

insert into canonici values(8,'arcoaort.bmp','arco aortico',22,28);

insert into canonici values(9,'diaframma.bmp','diaframma',26,25);

insert into canonici values(10,'carotide.bmp','carotide',13,13);

insert into canonici values(11,'colvert.bmp','sezione colonna vertebrale',33,28);

insert into canonici values(12,'trachea.bmp','trachea',9,11);

insert into canonici values(13,'esofago.bmp','esofago',8,7);

insert into canonici values(14,'succlavia.bmp','succlavia',12,12);

insert into canonici values(15,'aortadisc.bmp','aorta discendente',21,21);

insert into canonici values(16,'cranioin.bmp','cranio inferiore',184,222);

insert into canonici values(17,'craniosu.bmp','cranio superiore',184,225);

insert into canonici values(18,'ventdes.bmp','ventricolo destro',20,32);

insert into canonici values(19,'ventsin.bmp','ventricolo sinistro',22,32);

Home