universita degli studi di modena e reggio emilia facoltà di ingegneria – sede di modena corso di...
TRANSCRIPT
![Page 1: UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di laurea in Ingegneria Informatica Progetto MOMIS : I wrapper](https://reader036.vdocuments.site/reader036/viewer/2022081518/55140f7f550346e2488b4fc5/html5/thumbnails/1.jpg)
UNIVERSITA’ DEGLI STUDI DI MODENA E REGGIO EMILIAFacoltà di Ingegneria – Sede di Modena
Corso di laurea in Ingegneria Informatica
Progetto MOMIS :I wrapper DB2/ODLi3 e Oracle/ODLi3
RelatoreChiar.mo Prof. Sonia Bergamaschi
Tesi di Laurea diMauro Verardi
![Page 2: UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di laurea in Ingegneria Informatica Progetto MOMIS : I wrapper](https://reader036.vdocuments.site/reader036/viewer/2022081518/55140f7f550346e2488b4fc5/html5/thumbnails/2.jpg)
MOMIS:MOMIS:MMediator envirediator envirOOnment for nment for MMultiple ultiple IInformation nformation SSourcesources
Obiettivo:Obiettivo: Realizzazione di uno strumento semi-automatico Realizzazione di uno strumento semi-automatico per l’integrazione di sorgenti eterogenee e distribuiteper l’integrazione di sorgenti eterogenee e distribuite
Approccio adottato:Approccio adottato: semantico semantico ee virtuale virtuale
Architettura di riferimento IArchitettura di riferimento I3 3 (ARPA)(ARPA)
Intelligent Integration of Information
![Page 3: UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di laurea in Ingegneria Informatica Progetto MOMIS : I wrapper](https://reader036.vdocuments.site/reader036/viewer/2022081518/55140f7f550346e2488b4fc5/html5/thumbnails/3.jpg)
SERVIZI DI WRAPPING (ISERVIZI DI WRAPPING (I33))
Comunicazione•Trasformazione interfaccia delle chiamate•Gestione del traffico di eventi•Trasformazione di chiamate di metodi e funzioni
Ristrutturazione dei dati•Traslazione tra differenti formati di dati•Trasformazione di metadati
Trasformazione del Comportamento•Modifica della semantica•Modifica dei protocolli•Traslazione tra differenti linguaggi di manipolazione dati
![Page 4: UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di laurea in Ingegneria Informatica Progetto MOMIS : I wrapper](https://reader036.vdocuments.site/reader036/viewer/2022081518/55140f7f550346e2488b4fc5/html5/thumbnails/4.jpg)
SERVIZI DI WRAPPING (ISERVIZI DI WRAPPING (I33))
Comunicazione•Trasformazione interfaccia delle chiamate•Gestione del traffico di eventi•Trasformazione di chiamate di metodi e funzioni
Ristrutturazione dei dati•Traslazione tra differenti formati di dati•Trasformazione di metadati
Trasformazione del Comportamento•Modifica della semantica•Modifica dei protocolli•Traslazione tra differenti linguaggi di manipolazione dati
![Page 5: UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di laurea in Ingegneria Informatica Progetto MOMIS : I wrapper](https://reader036.vdocuments.site/reader036/viewer/2022081518/55140f7f550346e2488b4fc5/html5/thumbnails/5.jpg)
MOMIS:MOMIS:MMediator envirediator envirOOnment for nment for MMultiple ultiple IInformation nformation SSourcesources
![Page 6: UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di laurea in Ingegneria Informatica Progetto MOMIS : I wrapper](https://reader036.vdocuments.site/reader036/viewer/2022081518/55140f7f550346e2488b4fc5/html5/thumbnails/6.jpg)
MOMIS:MOMIS:MMediator envirediator envirOOnment for nment for MMultiple ultiple IInformation nformation SSourcesources
![Page 7: UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di laurea in Ingegneria Informatica Progetto MOMIS : I wrapper](https://reader036.vdocuments.site/reader036/viewer/2022081518/55140f7f550346e2488b4fc5/html5/thumbnails/7.jpg)
MOMIS:MOMIS:MMediator envirediator envirOOnment for nment for MMultiple ultiple IInformation nformation SSourcesources
![Page 8: UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di laurea in Ingegneria Informatica Progetto MOMIS : I wrapper](https://reader036.vdocuments.site/reader036/viewer/2022081518/55140f7f550346e2488b4fc5/html5/thumbnails/8.jpg)
MOMIS:MOMIS:MMediator envirediator envirOOnment for nment for MMultiple ultiple IInformation nformation SSourcesources
![Page 9: UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di laurea in Ingegneria Informatica Progetto MOMIS : I wrapper](https://reader036.vdocuments.site/reader036/viewer/2022081518/55140f7f550346e2488b4fc5/html5/thumbnails/9.jpg)
I WRAPPER NEL SISTEMA MOMIS:I WRAPPER NEL SISTEMA MOMIS:
Interfaccia Interfaccia WrapperWrapper
o String getDescriptionXml()o String getDescription()
o String getSourceName()
o String getType()o WrapperRS runQuery()
Wrapper XMLWrapper JDBC-ODBC-MS_AccessWrapper JDBC genericoWrapper Microsoft SQL Server
Wrapper già disponibili in MOMIS:
•Implementato in JAVA•Oggetto CORBA•Dichiara le funzioni
![Page 10: UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di laurea in Ingegneria Informatica Progetto MOMIS : I wrapper](https://reader036.vdocuments.site/reader036/viewer/2022081518/55140f7f550346e2488b4fc5/html5/thumbnails/10.jpg)
LA TECNOLOGIA JDBC:LA TECNOLOGIA JDBC:JJava ava DDataataBBase ase CConnectivityonnectivity
•Stabilire una connessione•Inviare query•Elaborare i risultati ottenuti
Interfaccia DatabaseMetadata
•Nomi delle tabelle•Nomi e tipi dei campi delle tabelle•Chiavi primarie•Foreign key
API JAVA implementate dai API JAVA implementate dai DriverDriver
![Page 11: UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di laurea in Ingegneria Informatica Progetto MOMIS : I wrapper](https://reader036.vdocuments.site/reader036/viewer/2022081518/55140f7f550346e2488b4fc5/html5/thumbnails/11.jpg)
I DRIVER ORACLE/JDBCI DRIVER ORACLE/JDBC
• JDBC OCI Client Side driver• JDBC Thin Client-Side driver• JDBC Thin Server-Side driver• JDBC Server-Side Internal driver
![Page 12: UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di laurea in Ingegneria Informatica Progetto MOMIS : I wrapper](https://reader036.vdocuments.site/reader036/viewer/2022081518/55140f7f550346e2488b4fc5/html5/thumbnails/12.jpg)
I DRIVER ORACLE/JDBCI DRIVER ORACLE/JDBC
• JDBC OCI Client Side driver• JDBC Thin Client-Side driver• JDBC Thin Server-Side driver• JDBC Server-Side Internal driver
I DRIVER DB2/JDBCI DRIVER DB2/JDBC
• DB2 Universal JDBC Driver• JDBC/SQLJ 2.0 Driver per OS/390• DB2 JDBC Type 2 Driver for Linux,UNIX e Windows
![Page 13: UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di laurea in Ingegneria Informatica Progetto MOMIS : I wrapper](https://reader036.vdocuments.site/reader036/viewer/2022081518/55140f7f550346e2488b4fc5/html5/thumbnails/13.jpg)
IL WRAPPER JDBC GENERICOIL WRAPPER JDBC GENERICO
Metodo Schema getSchema()
•Nomi delle tabelle•Nomi e tipi dei campi delle tabelle
Metodo Type getAttributeType( int t ) per le traduzione da tipo JDBC a tipo ODLI3
![Page 14: UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di laurea in Ingegneria Informatica Progetto MOMIS : I wrapper](https://reader036.vdocuments.site/reader036/viewer/2022081518/55140f7f550346e2488b4fc5/html5/thumbnails/14.jpg)
IL WRAPPER JDBC GENERICOIL WRAPPER JDBC GENERICO
Metodo Schema getSchema()
•Nomi delle tabelle•Nomi e tipi dei campi delle tabelle
CREATE TABLE TBL_AMBITI_CDS_SPECIFICI (IDCds numeric(18, 0) NOT NULL,IDAttivita numeric(18, 0) NOT NULL,IDAmbitoSpecifico numeric(18, 0) NOT NULL,Denominazione varchar (100),CFU varchar (10)) ;
ALTER TABLE TBL_AMBITI_CDS_SPECIFICI ADD CONSTRAINT PK_TBL_AMBITI_SPEC PRIMARY KEY (IDCds,IDAttivita,IDAmbitoSpecifico);ALTER TABLE TBL_AMBITI_CDS_SPECIFICI ADD CONSTRAINT FK_TBL_AMBITI_SPECIFICI_TBL_AMBITI_CDS FOREIGN KEY (IDAttivita,IDCds) REFERENCES TBL_AMBITI_CDS (IdAttivita,IDCdS);
interface TBL_AMBITI_CDS_SPECIFICI ( extent TBL_AMBITI_CDS_SPECIFICI) { attribute string DENOMINAZIONE; attribute float IDAMBITOSPECIFICO; attribute float IDCDS; attribute float IDATTIVITA; attribute string CFU;}
![Page 15: UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di laurea in Ingegneria Informatica Progetto MOMIS : I wrapper](https://reader036.vdocuments.site/reader036/viewer/2022081518/55140f7f550346e2488b4fc5/html5/thumbnails/15.jpg)
JDBC ODLI3
ARRAY Unsupported
BIGINT IntegerType(true,true) = Long
BINARY Unsupported
BIT BooleanType
BLOB Unsupported
CHAR CharType
CLOB Unsupported
DATE DateType
DECIMAL FloatingType(false) = Float
DISTINCT Unsupported
DOUBLE FloatingType(true) = Double
FLOAT FloatingType(true) =Double
INTEGER IntegerType(false,true) = Short
LONGVARBINARY StringType(unsupported)
LONGVARCHAR StringType(unsupported)
NUMERIC FloatingType(true) =Double
OTHER AnyType (?)
REAL FloatingType(true) =Double
REF Unsupported
SMALLINT IntegerType(false,true) = Short
STRUCT Unsupported
TIME DateType
TIMESTAMP DateType
TINYINT IntegerType(false,true) = Short
VARBINARY StringType(unsupported?)
VARCHAR StringType
Map
ping
tra
tipi d
i dat
o JD
BC
e O
DL
I3
Metodo Type getAttributeType( int t )
IL WRAPPER JDBC GENERICOIL WRAPPER JDBC GENERICO
![Page 16: UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di laurea in Ingegneria Informatica Progetto MOMIS : I wrapper](https://reader036.vdocuments.site/reader036/viewer/2022081518/55140f7f550346e2488b4fc5/html5/thumbnails/16.jpg)
I WRAPPER SQL_SERVER/ODLI WRAPPER SQL_SERVER/ODLII33, DB2/ODL, DB2/ODLII33, ORACLE/ODL, ORACLE/ODLII33
Metodo Schema getSchema()
•Nomi delle tabelle•Nomi e tipi dei campi delle tabelle•Chiavi primarie•Foreign key
Metodo boolean theTableShouldBeDescribed(String tableName)per l‘esclusione delle tabelle di sistema
• Data dictionary di Oracle• System catalog di DB2
Metodo Type getAttributeType( int t ) per le traduzione da tipo JDBC a tipo ODLI3
ereditato dal wrapper JDBC generico
![Page 17: UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di laurea in Ingegneria Informatica Progetto MOMIS : I wrapper](https://reader036.vdocuments.site/reader036/viewer/2022081518/55140f7f550346e2488b4fc5/html5/thumbnails/17.jpg)
I WRAPPER SQL_SERVER/ODLI WRAPPER SQL_SERVER/ODLII33, DB2/ODL, DB2/ODLII33, ORACLE/ODL, ORACLE/ODLII33
Metodo Schema getSchema()
CREATE TABLE TBL_AMBITI_CDS_SPECIFICI (IDCds numeric(18, 0) NOT NULL,IDAttivita numeric(18, 0) NOT NULL,IDAmbitoSpecifico numeric(18, 0) NOT NULL,Denominazione varchar (100),CFU varchar (10)) ;
ALTER TABLE TBL_AMBITI_CDS_SPECIFICI ADD CONSTRAINT PK_TBL_AMBITI_SPEC PRIMARY KEY (IDCds,IDAttivita,IDAmbitoSpecifico);ALTER TABLE TBL_AMBITI_CDS_SPECIFICI ADD CONSTRAINT FK_TBL_AMBITI_SPECIFICI_TBL_AMBITI_CDS FOREIGN KEY (IDAttivita,IDCds) REFERENCES TBL_AMBITI_CDS (IdAttivita,IDCdS);
![Page 18: UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di laurea in Ingegneria Informatica Progetto MOMIS : I wrapper](https://reader036.vdocuments.site/reader036/viewer/2022081518/55140f7f550346e2488b4fc5/html5/thumbnails/18.jpg)
I WRAPPER SQL_SERVER/ODLI WRAPPER SQL_SERVER/ODLII33, DB2/ODL, DB2/ODLII33, ORACLE/ODL, ORACLE/ODLII33
Metodo Schema getSchema()
interface TBL_AMBITI_CDS_SPECIFICI ( extent TBL_AMBITI_CDS_SPECIFICI key (IDAmbitoSpecifico, IDAttivita, IDCds) foreign_key FK_TBL_AMBITI_SPECIFICI_TBL_AMBITI_CDS (IDAttivita, IDCds) references TBL_AMBITI_CDS (IdAttivita, IDCdS) ){ attribute double IDAmbitoSpecifico; attribute string Denominazione; attribute double IDCds; attribute double IDAttivita; attribute string CFU;}
interface TBL_AMBITI_CDS_SPECIFICI ( extent TBL_AMBITI_CDS_SPECIFICI key (IDCDS,IDATTIVITA,IDAMBITOSPECIFICO) foreign_key FK_TBL_AMBITI_SPEC_TBL_AMB_CDS(IDATTIVITA,IDCDS) references TBL_AMBITI_CDS (IDATTIVITA, IDCDS) ){ attribute string DENOMINAZIONE; attribute float IDAMBITOSPECIFICO; attribute float IDCDS; attribute float IDATTIVITA; attribute string CFU;}
interface TBL_AMBITI_CDS_SPECIFICI ( extent TBL_AMBITI_CDS_SPECIFICI key (IDAMBITOSPECIFICO,IDATTIVITA, IDCDS) foreign_key FK_TBL_AMBITI_SPEC_TBL_AMB_CDS (IDATTIVITA,IDCDS) references TBL_AMBITI_CDS (IDATTIVITA,IDCDS) ){ attribute string DENOMINAZIONE; attribute float IDAMBITOSPECIFICO; attribute float IDCDS; attribute float IDATTIVITA; attribute string CFU;}
SQL_Server/ODLI3
DB2/ODLI3
Oracle/ODLI3
![Page 19: UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di laurea in Ingegneria Informatica Progetto MOMIS : I wrapper](https://reader036.vdocuments.site/reader036/viewer/2022081518/55140f7f550346e2488b4fc5/html5/thumbnails/19.jpg)
I WRAPPER SQL_SERVER/ODLI WRAPPER SQL_SERVER/ODLII33, DB2/ODL, DB2/ODLII33, ORACLE/ODL, ORACLE/ODLII33
Metodo Schema getSchema()
interface TBL_AMBITI_CDS_SPECIFICI ( extent TBL_AMBITI_CDS_SPECIFICI key (IDAmbitoSpecifico, IDAttivita, IDCds) foreign_key FK_TBL_AMBITI_SPECIFICI_TBL_AMBITI_CDS (IDAttivita, IDCds) references TBL_AMBITI_CDS (IdAttivita, IDCdS) ){ attribute double IDAmbitoSpecifico; attribute string Denominazione; attribute double IDCds; attribute double IDAttivita; attribute string CFU;}
interface TBL_AMBITI_CDS_SPECIFICI ( extent TBL_AMBITI_CDS_SPECIFICI key (IDCDS,IDATTIVITA,IDAMBITOSPECIFICO) foreign_key FK_TBL_AMBITI_SPEC_TBL_AMB_CDS(IDATTIVITA,IDCDS) references TBL_AMBITI_CDS (IDATTIVITA, IDCDS) ){ attribute string DENOMINAZIONE; attribute float IDAMBITOSPECIFICO; attribute float IDCDS; attribute float IDATTIVITA; attribute string CFU;}
interface TBL_AMBITI_CDS_SPECIFICI ( extent TBL_AMBITI_CDS_SPECIFICI key (IDAMBITOSPECIFICO,IDATTIVITA}, IDCDS) foreign_key FK_TBL_AMBITI_SPEC_TBL_AMB_CDS (IDATTIVITA,IDCDS) references TBL_AMBITI_CDS (IDATTIVITA,IDCDS) ){ attribute string DENOMINAZIONE; attribute float IDAMBITOSPECIFICO; attribute float IDCDS; attribute float IDATTIVITA; attribute string CFU;}
SQL_Server/ODLI3
DB2/ODLI3
Oracle/ODLI3
![Page 20: UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di laurea in Ingegneria Informatica Progetto MOMIS : I wrapper](https://reader036.vdocuments.site/reader036/viewer/2022081518/55140f7f550346e2488b4fc5/html5/thumbnails/20.jpg)
I WRAPPER SQL_SERVER/ODLI WRAPPER SQL_SERVER/ODLII33, DB2/ODL, DB2/ODLII33, ORACLE/ODL, ORACLE/ODLII33
Metodo Schema getSchema()
interface TBL_AMBITI_CDS_SPECIFICI ( extent TBL_AMBITI_CDS_SPECIFICI key (IDAmbitoSpecifico, IDAttivita, IDCds) foreign_key FK_TBL_AMBITI_SPECIFICI_TBL_AMBITI_CDS (IDAttivita, IDCds) references TBL_AMBITI_CDS (IdAttivita, IDCdS) ){ attribute double IDAmbitoSpecifico; attribute string Denominazione; attribute double IDCds; attribute double IDAttivita; attribute string CFU;}
interface TBL_AMBITI_CDS_SPECIFICI ( extent TBL_AMBITI_CDS_SPECIFICI key (IDCDS,IDATTIVITA,IDAMBITOSPECIFICO) foreign_key FK_TBL_AMBITI_SPEC_TBL_AMB_CDS(IDATTIVITA,IDCDS) references TBL_AMBITI_CDS (IDATTIVITA, IDCDS) ){ attribute string DENOMINAZIONE; attribute float IDAMBITOSPECIFICO; attribute float IDCDS; attribute float IDATTIVITA; attribute string CFU;}
interface TBL_AMBITI_CDS_SPECIFICI ( extent TBL_AMBITI_CDS_SPECIFICI key (IDAMBITOSPECIFICO,IDATTIVITA, IDCDS) foreign_key FK_TBL_AMBITI_SPEC_TBL_AMB_CDS (IDATTIVITA,IDCDS) references TBL_AMBITI_CDS (IDATTIVITA,IDCDS) ){ attribute string DENOMINAZIONE; attribute float IDAMBITOSPECIFICO; attribute float IDCDS; attribute float IDATTIVITA; attribute string CFU;}
SQL_Server/ODLI3
DB2/ODLI3
Oracle/ODLI3
![Page 21: UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di laurea in Ingegneria Informatica Progetto MOMIS : I wrapper](https://reader036.vdocuments.site/reader036/viewer/2022081518/55140f7f550346e2488b4fc5/html5/thumbnails/21.jpg)
I WRAPPER SQL_SERVER/ODLI WRAPPER SQL_SERVER/ODLII33, DB2/ODL, DB2/ODLII33, ORACLE/ODL, ORACLE/ODLII33
Metodo Schema getSchema()
interface TBL_AMBITI_CDS_SPECIFICI ( extent TBL_AMBITI_CDS_SPECIFICI key (IDAmbitoSpecifico, IDAttivita, IDCds) foreign_key FK_TBL_AMBITI_SPECIFICI_TBL_AMBITI_CDS (IDAttivita, IDCds) references TBL_AMBITI_CDS (IdAttivita, IDCdS) ){ attribute double IDAmbitoSpecifico; attribute string Denominazione; attribute double IDCds; attribute double IDAttivita; attribute string CFU;}
interface TBL_AMBITI_CDS_SPECIFICI ( extent TBL_AMBITI_CDS_SPECIFICI key (IDCDS,IDATTIVITA,IDAMBITOSPECIFICO) foreign_key FK_TBL_AMBITI_SPEC_TBL_AMB_CDS(IDATTIVITA,IDCDS) references TBL_AMBITI_CDS (IDATTIVITA, IDCDS) ){ attribute string DENOMINAZIONE; attribute float IDAMBITOSPECIFICO; attribute float IDCDS; attribute float IDATTIVITA; attribute string CFU;}
interface TBL_AMBITI_CDS_SPECIFICI ( extent TBL_AMBITI_CDS_SPECIFICI key (IDAMBITOSPECIFICO,IDATTIVITA, IDCDS) foreign_key FK_TBL_AMBITI_SPEC_TBL_AMB_CDS (IDATTIVITA,IDCDS) references TBL_AMBITI_CDS (IDATTIVITA,IDCDS) ){ attribute string DENOMINAZIONE; attribute float IDAMBITOSPECIFICO; attribute float IDCDS; attribute float IDATTIVITA; attribute string CFU;}
SQL_Server/ODLI3
DB2/ODLI3
Oracle/ODLI3
![Page 22: UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di laurea in Ingegneria Informatica Progetto MOMIS : I wrapper](https://reader036.vdocuments.site/reader036/viewer/2022081518/55140f7f550346e2488b4fc5/html5/thumbnails/22.jpg)
I WRAPPER SQL_SERVER/ODLI WRAPPER SQL_SERVER/ODLII33, DB2/ODL, DB2/ODLII33, ORACLE/ODL, ORACLE/ODLII33
Metodo Schema getSchema()
interface TBL_AMBITI_CDS_SPECIFICI ( extent TBL_AMBITI_CDS_SPECIFICI key (IDAmbitoSpecifico, IDAttivita, IDCds) foreign_key FK_TBL_AMBITI_SPECIFICI_TBL_AMBITI_CDS (IDAttivita, IDCds) references TBL_AMBITI_CDS (IdAttivita, IDCdS) ){ attribute double IDAmbitoSpecifico; attribute string Denominazione; attribute double IDCds; attribute double IDAttivita; attribute string CFU;}
interface TBL_AMBITI_CDS_SPECIFICI ( extent TBL_AMBITI_CDS_SPECIFICI key (IDCDS,IDATTIVITA,IDAMBITOSPECIFICO) foreign_key FK_TBL_AMBITI_SPEC_TBL_AMB_CDS(IDATTIVITA,IDCDS) references TBL_AMBITI_CDS (IDATTIVITA, IDCDS) ){ attribute string DENOMINAZIONE; attribute float IDAMBITOSPECIFICO; attribute float IDCDS; attribute float IDATTIVITA; attribute string CFU;}
interface TBL_AMBITI_CDS_SPECIFICI ( extent TBL_AMBITI_CDS_SPECIFICI key (IDAMBITOSPECIFICO,IDATTIVITA, IDCDS) foreign_key FK_TBL_AMBITI_SPEC_TBL_AMB_CDS (IDATTIVITA,IDCDS) references TBL_AMBITI_CDS (IDATTIVITA,IDCDS) ){ attribute string DENOMINAZIONE; attribute float IDAMBITOSPECIFICO; attribute float IDCDS; attribute float IDATTIVITA; attribute string CFU;}
SQL_Server/ODLI3
DB2/ODLI3
Oracle/ODLI3
![Page 23: UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di laurea in Ingegneria Informatica Progetto MOMIS : I wrapper](https://reader036.vdocuments.site/reader036/viewer/2022081518/55140f7f550346e2488b4fc5/html5/thumbnails/23.jpg)
I WRAPPER SQL_SERVER/ODLI WRAPPER SQL_SERVER/ODLII33, DB2/ODL, DB2/ODLII33, ORACLE/ODL, ORACLE/ODLII33
Oracle SQL datatypes JDBC datatypes ODLI3 datatypes
NUMBER BIGINT IntegerType(true,true)
NUMBER INTEGER IntegerType(false,true)
NUMBER SMALLINT
NUMBER TINYINT
NUMBER BIT BooleanType
CHAR CHAR CharType
DATE DATE DateType
DATE TIME
TIMESTAMP TIMESTAMP
NUMBER DECIMAL FloatingType(false)
NUMBER FLOAT (Float)
NUMBER DOUBLE FloatingType(true)
NUMBER NUMERIC (Double)
NUMBER REAL
LONGRAW LONGVARBINARY StringType
LONG LONGVARCHAR
RAW VARBINARY
VARCHAR2 VARCHAR
![Page 24: UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di laurea in Ingegneria Informatica Progetto MOMIS : I wrapper](https://reader036.vdocuments.site/reader036/viewer/2022081518/55140f7f550346e2488b4fc5/html5/thumbnails/24.jpg)
I WRAPPER SQL_SERVER/ODLI WRAPPER SQL_SERVER/ODLII33, DB2/ODL, DB2/ODLII33, ORACLE/ODL, ORACLE/ODLII33
Oracle SQL datatypes JDBC datatypes ODLI3 datatypes
NUMBER BIGINT IntegerType(true,true)
NUMBER INTEGER IntegerType(false,true)
NUMBER SMALLINT
NUMBER TINYINT
NUMBER BIT BooleanType
CHAR CHAR CharType
DATE DATE DateType
DATE TIME
TIMESTAMP TIMESTAMP
NUMBER DECIMAL FloatingType(false)
NUMBER FLOAT (Float)
NUMBER DOUBLE FloatingType(true)
NUMBER NUMERIC (Double)
NUMBER REAL
LONGRAW LONGVARBINARY StringType
LONG LONGVARCHAR
RAW VARBINARY
VARCHAR2 VARCHAR
![Page 25: UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di laurea in Ingegneria Informatica Progetto MOMIS : I wrapper](https://reader036.vdocuments.site/reader036/viewer/2022081518/55140f7f550346e2488b4fc5/html5/thumbnails/25.jpg)
I WRAPPER SQL_SERVER/ODLI WRAPPER SQL_SERVER/ODLII33, DB2/ODL, DB2/ODLII33, ORACLE/ODL, ORACLE/ODLII33
Metodo boolean theTableShouldBeDescribed(String tableName)
public ResultSet getTables(String catalog, String schemaPattern, String tableNamePattern, String[] types)
TABLE_CAT String => table catalog (may be null) TABLE_SCHEM String => table schema (may be null) TABLE_NAME String => table name TABLE_TYPE String => table type. Typical types are "TABLE", "VIEW", "SYSTEM TABLE", "GLOBAL TEMPORARY", "LOCAL TEMPORARY", "ALIAS", "SYNONYM". REMARKS String => explanatory comment on the table TYPE_CAT String => the types catalog (may be null) TYPE_SCHEM String => the types schema (may be null) TYPE_NAME String => type name (may be null) SELF_REFERENCING_COL_NAME String => name of the designated "identifier" column of a typed table (may be null) REF_GENERATION String => specifies how values in SELF_REFERENCING_COL_NAME are created. Values are "SYSTEM", "USER", "DERIVED". (may be null)
![Page 26: UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di laurea in Ingegneria Informatica Progetto MOMIS : I wrapper](https://reader036.vdocuments.site/reader036/viewer/2022081518/55140f7f550346e2488b4fc5/html5/thumbnails/26.jpg)
I WRAPPER SQL_SERVER/ODLI WRAPPER SQL_SERVER/ODLII33, DB2/ODL, DB2/ODLII33, ORACLE/ODL, ORACLE/ODLII33
Metodo boolean theTableShouldBeDescribed(String tableName)
public ResultSet getTables(String catalog, String schemaPattern, String tableNamePattern, String[] types)
TABLE_CAT String => table catalog (may be null) TABLE_SCHEM String => table schema (may be null) TABLE_NAME String => table name TABLE_TYPE String => table type. Typical types are "TABLE", "VIEW", "SYSTEM TABLE", "GLOBAL TEMPORARY", "LOCAL TEMPORARY", "ALIAS", "SYNONYM". REMARKS String => explanatory comment on the table TYPE_CAT String => the types catalog (may be null) TYPE_SCHEM String => the types schema (may be null) TYPE_NAME String => type name (may be null) SELF_REFERENCING_COL_NAME String => name of the designated "identifier" column of a typed table (may be null) REF_GENERATION String => specifies how values in SELF_REFERENCING_COL_NAME are created. Values are "SYSTEM", "USER", "DERIVED". (may be null)
![Page 27: UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di laurea in Ingegneria Informatica Progetto MOMIS : I wrapper](https://reader036.vdocuments.site/reader036/viewer/2022081518/55140f7f550346e2488b4fc5/html5/thumbnails/27.jpg)
I WRAPPER SQL_SERVER/ODLI WRAPPER SQL_SERVER/ODLII33, DB2/ODL, DB2/ODLII33, ORACLE/ODL, ORACLE/ODLII33
Metodo boolean theTableShouldBeDescribed(String tableName)
public ResultSet getTables(String catalog, String schemaPattern, String tableNamePattern, String[] types)
TABLE_SCHEM String => table schema (may be null) TABLE_TYPE String => table type. Typical types are "TABLE", "VIEW", "SYSTEM TABLE", "GLOBAL TEMPORARY", "LOCAL TEMPORARY", "ALIAS", "SYNONYM".
![Page 28: UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di laurea in Ingegneria Informatica Progetto MOMIS : I wrapper](https://reader036.vdocuments.site/reader036/viewer/2022081518/55140f7f550346e2488b4fc5/html5/thumbnails/28.jpg)
I WRAPPER SQL_SERVER/ODLI WRAPPER SQL_SERVER/ODLII33, DB2/ODL, DB2/ODLII33, ORACLE/ODL, ORACLE/ODLII33
Metodo boolean theTableShouldBeDescribed(String tableName)
public ResultSet getTables(String catalog, String schemaPattern, String tableNamePattern, String[] types)
TABLE_SCHEM String => table schema (may be null) TABLE_TYPE String => table type. Typical types are "TABLE", "VIEW", "SYSTEM TABLE", "GLOBAL TEMPORARY", "LOCAL TEMPORARY", "ALIAS", "SYNONYM".
getSchema() TABLE_TYPE = "TABLE"
![Page 29: UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di laurea in Ingegneria Informatica Progetto MOMIS : I wrapper](https://reader036.vdocuments.site/reader036/viewer/2022081518/55140f7f550346e2488b4fc5/html5/thumbnails/29.jpg)
I WRAPPER SQL_SERVER/ODLI WRAPPER SQL_SERVER/ODLII33, DB2/ODL, DB2/ODLII33, ORACLE/ODL, ORACLE/ODLII33
Metodo boolean theTableShouldBeDescribed(String tableName)
public ResultSet getTables(String catalog, String schemaPattern, String tableNamePattern, String[] types)
TABLE_SCHEM String => table schema (may be null) TABLE_TYPE String => table type. Typical types are "TABLE", "VIEW", "SYSTEM TABLE", "GLOBAL TEMPORARY", "LOCAL TEMPORARY", "ALIAS", "SYNONYM".
getSchema() TABLE_TYPE = "TABLE"
Oracle
DB2
MDSYSOLAPSYSSYSSYSTEMWKSYSXDB
TABLE_SCHEM ≠ SYSIBMSYSTOOLS
TABLE_SCHEM ≠
![Page 30: UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di laurea in Ingegneria Informatica Progetto MOMIS : I wrapper](https://reader036.vdocuments.site/reader036/viewer/2022081518/55140f7f550346e2488b4fc5/html5/thumbnails/30.jpg)
I WRAPPER GUII WRAPPER GUI
![Page 31: UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di laurea in Ingegneria Informatica Progetto MOMIS : I wrapper](https://reader036.vdocuments.site/reader036/viewer/2022081518/55140f7f550346e2488b4fc5/html5/thumbnails/31.jpg)
I WRAPPER GUII WRAPPER GUI
![Page 32: UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di laurea in Ingegneria Informatica Progetto MOMIS : I wrapper](https://reader036.vdocuments.site/reader036/viewer/2022081518/55140f7f550346e2488b4fc5/html5/thumbnails/32.jpg)
I WRAPPER GUII WRAPPER GUI
Metodo getAllDatabase()
• DB2 Universal Database per z/OS
• DB2 Universal Database per Linux, Unix, Windows
• Oracle Database su sistemi UNIX
Database DSNDB06 Tabella SYSIBM.SYSDATABASE
Comando“LIST DATABASE DIRECTORY”File <home_dir>/sqldbdir
• Oracle Database su sistemi Windows
File /etc/oratab (/var/opt/oracle se sistemi Solaris )
Registri di sistemaHKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_HOME_NAME\ORACLE_SID
![Page 33: UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di laurea in Ingegneria Informatica Progetto MOMIS : I wrapper](https://reader036.vdocuments.site/reader036/viewer/2022081518/55140f7f550346e2488b4fc5/html5/thumbnails/33.jpg)
CONCLUSIONICONCLUSIONI
WrapperJdbcCore_DB2Server
WrapperJdbcCore_oracle
DB2ServerWrapperGUI
OracleServerWrapperGUI
Metodo getAllDatabase()
Metodo getAllDatabase()
![Page 34: UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di laurea in Ingegneria Informatica Progetto MOMIS : I wrapper](https://reader036.vdocuments.site/reader036/viewer/2022081518/55140f7f550346e2488b4fc5/html5/thumbnails/34.jpg)
CONCLUSIONICONCLUSIONI
WrapperJdbcCore_DB2Server
WrapperJdbcCore_oracle
DB2ServerWrapperGUI
OracleServerWrapperGUI
Metodo getAllDatabase()
Metodo getAllDatabase()
Oracle DBA Forum
DUGI Listserv
![Page 35: UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di laurea in Ingegneria Informatica Progetto MOMIS : I wrapper](https://reader036.vdocuments.site/reader036/viewer/2022081518/55140f7f550346e2488b4fc5/html5/thumbnails/35.jpg)
PROGETTO MOMIS: I WRAPPER DB2/ODLPROGETTO MOMIS: I WRAPPER DB2/ODLII33 E ORACLE/ODLE ORACLE/ODLII33
Grazie per Grazie per l’attenzionel’attenzione
Mauro Verardi