Sommario Firebird Firebird Firebird versione 2.x.x Firebird

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Sommario Firebird Firebird Firebird versione 2.x.x Firebird"

Transcript

1 Sommario Questo libro rappresenta una guida di riferimento per chi già utilizza il database server SQL Firebird, o pensa di utilizzarlo nei suoi prossimi progetti. Il libro copre quasi tutti gli aspetti di Firebird e lo spiega in modo semplice e pratico con piccoli esempi tratti dal mondo reale. La conoscenza di altri RDBMS e del linguaggio SQL abbrevia notevolemente i tempi per diventare produttivi con Firebird, ma non è indispensabile. Il libro fa riferimento alla versione 2.x.x di Firebird

2 () Prefazione Fino a qualche anno fa, lo sviluppo di vere applicazioni client/server (c/s), basate su veri database server SQL era quasi esclusivamente appannaggio di software house specializzate e di programmatori professionisti affermati del settore. Infatti, il costo del database server e delle relative licenze dei client che accedono contemporaneamente al server era proibitivo per la maggior parte degli utenti. Se aggiungiamo poi il costo di gestione del database nonché del server, la situzione si complica ulteriormente in termini economici, tecnici e di risorse umane. Perciò, in molti casi, l utente utilizzava come ripiego un finto e limitato ma economico RDBMS come Microsoft Access o Paradox con i noti ed inevitabili limiti che spesso si traducono in una notevole perdità di efficienza e a volte anche di dati. Oggi, grazie alla disponibilità gratuita di database server di qualità industriale come Firebird, la situazione è radicalmente cambiata. Ma per poter utilizzare al meglio questo RDBMS e raggiungere risultati apprezzabili, occorrono adeguate conoscenze e competenze. Questo libro ha la finalità di fornire al lettore tutto il necessario per iniziare e procedere con Firebird nella giusta direzione minimizzando investimenti e tempi di apprendimento. Il target di riferimento di questa pubblicazione è l utente medio-avanzato. Jilani KHALDI Marzo 2012 Jilani KHALDI Via Giovanni Paolo I, 9/A San Salvo (CH) - ITALIA Tel: (+39) E. Mail: Home page: 1

3 INDICE Prefazione 7 1 Introduzione Perché Firebird? Firebird embedded Vulcano Il futuro di Firebird Caratteristiche di Firebird Firebird e SQL Firebird Classic e SuperServer Firebird Dialect-1, 2 e Amministrazione dei Database Gestione della sicurezza Backup e restore Manutenzione di un database Le specifiche di Firebird Installazione di Firebird Valutazione delle risorse di sistema Classic o SuperServer? Installazione su Linux Disinstallazione su Linux Installazione su Windows Configurazione di Firebird Creazione di Database Cosa dobbiamo sapere Creare un database Database di sola lettura Eliminare un database Estrarre i metadata da un database Tipi di Dati Firebird e tipi di dati Definizione dei tipi numerici Il tipo intero

4 Indice (Indice) Numeri decimali Come Firebird immagazzina i numeri decimali? Specificare NUMERIC e DECIMAL senza scala I tipi DATE e TIMESTAMP Conversione del tipo DATE I tipi CHAR e VARCHAR Il tipo BLOB I campi BLOB Lunghezza di un segmento BLOB Sottotipi BLOB I filtri BLOB BLOB o VARCHAR? Vantaggi di VARCHAR Vantaggi di BLOB Gli array Conversione dei tipi di dati Lavorare con i Domini Utilità e utilizzo dei domini Modifica di un dominio Eliminazione di un dominio Lavorare con le Tabelle Creare le tabelle Definizione delle colonne Definizione dei vincoli d integrità Vincoli dovuti a PRIMARY KEY e UNIQUE Forzare l integrità referenziale Referenziare tabelle posseduta da terzi Referenze circolari Come creare vincoli Condizioni di controllo di un vincolo (CHECK) Uso di file esterni Restrizione Importazione di file esterni in una tabella Firebird Esportazione di tabelle Firebird in un file esterno Modifica delle tabelle Prima di modificare una tabella Salvataggio dei dati esistenti Eliminare una colonna ALTER TABLE Aggiungere una nuova colonna Eliminazione di una tabella Lavorare con gli Indici Gli indici Quando conviene usare gli indici Creare gli indici Usare CREATE INDEX Indice su più colonne Esempio di uso di indici su più colonne Migliorare le prestazioni con l uso degli indici Usare ALTER INDEX Usare SET STATISTICS

5 Indice (Indice) 8.8 Usare DROP INDEX Lavorare con le Viste Le viste Vantaggi di usare le viste Creare una vista Specificare i nomi delle colonne in una vista Usare SELECT nelle viste Uso di espressioni nella definizione delle colonne Viste di sola lettura o aggiornabili Privilegi per creare le viste Inserimento dei dati attraverso una vista Usare WITH CHECK OPTION Eliminazione di una vista Stored Procedure Lavorare con le stored procedure Utilizzo di file esterno Chiamata ad una stored procedure Creare una stored procedure Usare SET TERM Header di una stored procedure Dichiarazione dei parametri di input Dichiarazione dei parametri di ouput Body di una stored procedure Uso delle variabili Assegnazione dei valori alle variabili Uso di SELECT Uso di FOR SELECT... DO Uso di WHILE... DO Uso di IF... THEN... ELSE Uso di commenti all interno di una stored procedure Uso della ricorsione Uso di SUSPEND, EXIT e END Modifiche di una stored procedure Eliminazione di una stored procedure Modifica di procedure in uso Uso delle stored procedure Uso di procedure Select Usare WHERE e ORDER BY Uso di altre funzioni con SELECT Vedere gli array con una stored procedure Eccezioni Creare una eccezione Modifica di una eccezione Eliminare una eccezione Sollevare un eccezione all interno di una stored procedure Gestione degli errori Gestione delle eccezioni Gestione degli errori SQL Gestione degli errori Firebird Esempi per la gestione degli errori Conclusione

6 Indice (Indice) 11 PSQL: Nuove Estensioni Utilizzare più cursori Argomenti di default Leave <etichetta> Controllo dello stack dal client UDF senza valore di ritorno Tabelle derivate Trigger Lavorare con i trigger Uso del file di data definition Creare un trigger Procedure Firebird e linguaggio trigger Uso di SET TERM in isql Errori di sintassi nei trigger Header di un trigger Body di un trigger Le variabili di contest NEW e OLD Uso dei generatori Modifica dei trigger Eliminazione di un trigger Usare i trigger Trigger transazioni Trigger e sicurezza Trigger come sentinelle degli eventi Aggiornare le viste con I trigger Eccezioni Sollevare un eccezione in un trigger Generatori Creare un generatore Inizializzazione di un generatore L uso dei generatori Sicurezza SQL e i privilegi per l acceso ai dati Sicurezza di default ed accessi I privilegi disponibili Gruppi SQL Garantire i privilegi Garantire i privilegi per l intera tabella Garantire l accesso alle colonne Privilegi per una stored procedure o per un trigger Privilegi multipli Garantire più privilegi Garantire tutti i privilegi Creare privilegi per più utenti Garantire i privilegi ad un elenco di utenti Garantire i privilegi ad un elenco di utenti Garantire i privilegi per tutti gli utenti Garantire i privilegi ad un elenco di stored procedure Uso di ROLE per garantire i privilegi Garantire i privilegi per un ROLE Garantire un ROLE per un utente

7 Indice (Indice) 14.6Concedere agli utenti il diritto di concedere privilegi Restrizioni nel concedere dei privilegi Conseguenze delle concessioni dei privilegi Concedere i privilegi ad una stored procedure Concedere l accesso alle viste Viste aggiornabili Viste di sola lettura Revocare accessi e privilegi Revoca delle restrizioni Revoca di privilegi multipli Revocare tutti i privilegi Revocare i privilegi per un elenco di utenti Revocare i privilegi ad un ROLE Revocare un ROLE ad un utente Revoca dei privilegi di EXECUTE Revocare i privilegi agli oggetti Revocare I privilegi a tutti gli utenti Revoca del diritto di concessione Usare le viste per limitare l accesso ai dati Rendere Firebird Sicuro Accesso diretto ai file Quando si può dire che un sistema è sicuro? Conclusione Gestione di Firebird Interactive SQL Creare un database Backup e restore gfix gsec gstat Le UDF Cosa sono le UDF L esempio in questione Windows/Delphi Linux/C UDF e stored procedure UDF disponibili con Firebird Novità di Firebird 2.1.x Amministrazione Performance Linguaggio SQL Database / Trigger Tabelle temporanee Operazioni su tabelle provvisorie Domini UPDATE OR INSERT Regole di esecuzione di UPDATE OR INSERT MERGE Nuove funzioni interne

8 Indice (Indice) 18 Firebird e Linguaggi di Programmazione Firebird e linguaggio C/C Firebird e Java Firebird e (Object) Pascal Linguaggi di scripting Ambienti di sviluppo Firebird e Free Pascal Lazarus Accedere a Firebird dal Free Pascal Applicazioni desktop Applicazioni web Firebird Embedded Server Installazione Funzionalità

9 CAPITOLO 1 INTRODUZIONE E così alla fine la bestia cadde ed i miscredenti esultarono. Ma non tutto era perduto, perché dalle ceneri sorse uno splendido uccello. L uccello fissò i miscredenti e gettò fuoco e fulmine su di loro. Poiché la bestia era risorta con rinnovato vigore, i seguaci di Mammona si rannichiarono dall orrore. (dal Libro di Mozilla, 7:15) 1.1 Perché Firebird? È molto diffcile trovare qualche vecchio, o nuovo, utente che conosca bene l RDBMS InterBase e che ne parli male. Già allora, quando era un prodotto commerciale e chiuso, InterBase era molto stimato e vantava una numerosa utenza e grossi nomi come la NASA, la National Bank di Chicago, Nokia, Ericsson, Boeing, Boston Stock Exchange e molti altri. La bassa occupazione di memoria, sia RAM che su disco (richiede ancora oggi poco più di 10 MB di RAM e meno di 20 MB su disco per una completa installazione), la facilità d installazione, d utilizzo e di gestione sono di gran lunga più a portata di mano di molti altri RDBMS con uguali ed anche inferiori qualità e funzionalità. InterBase, dal principo, era stato concepito, progettato e realizzato per un utenza professionale ed aziendale pagante, con tutte le implicazioni del caso. Quindi, non si tratta di un software nato e cresciuto in piena anarchia e senza nessuna garanzia, o di uno dei tanti software sviluppati, per hobby o giusto per sperimentare, da dilettanti programmatori senza pretese e con know-how limitato che, poi dopo tanti anni, ha raggiunto il successo. InterBase è stato sviluppato da un azienda seria e leader a livello mondiale nello sviluppo di software per programmatori professionisti. I suoi strumenti sono stati da sempre ritenuti tra i più accreditati ed affdabili disponibili sul mercato dalla sua nascita fino ad oggi. Parlo, ovviamente, della Borland International. Quando si parla della Borland, è doveroso citare il glorioso Turbo Pascal, leader mondiale e standard per lo sviluppo nel linguaggio Pascal che negli anni 80 ha rappresentato il punto di riferimento per un intera generazione di programmatori. Per dovere di cronaca, l eccellente RAD Delphi che è il suo diretto discendente mentre il Free Pascal Compiler è una versione freeware ed open source di un compilatore Object Pascal multipiattaforma. 8

10 1.1. Perché Firebird? (Introduzione) Personalmente, ho usato InterBase per una decina di anni come RDBMS in una serie di progetti, alcuni complessi e scritti in diversi linguaggi, senza riscontrare il minimo problema. InterBase non è stato affatto nè il primo nè l ultimo ad esere utilizzato, ma finora non ho trovato tutte le sue qualità in un diverso prodotto. Molti dei frequenti e cronici problemi che spesso sento parlare gli utenti di altri RDBMS sono praticamente inesistenti o di facile soluzione per chi utlizza InterBase. Firebird è null altro che un InterBase riveduto, migliorato e reso freeware ed open source. Quindi, ora le ragioni di confermare Firebird come l RDBMS di riferimento per tutto il software che scriverò sono maggiormante rafforzate. Firebird 1.0 non ha rappresentato una rivoluzione rispetto ad InterBase 6.0; infatti, ha solo eliminato alcuni seri problemi di sicurezza e qualche bug con l aggiunta di poche migliorie. Firebird 1.5, invece, è un grande passo avanto rispetto alla versione precedente che, anche quando si tratta di una versione di transizione alla nuova versione 2.x, rappresenta un ulteriore passo avanti nella prospettiva di rendere Firebird un RDBMS di altissima qualità. La grande novità sta nel fatto che l intero motore del database server è stato riscritto in C++, mentre la versione precedente era scritta in C. Il vantaggio di questa riscrittura è un maggior ordine, chiarezza e leggibilità del codice. Grazie a questa decisione, a lungo termine, le prossime versioni saranno più facili da estendere e da gestire. Firebird 2.x.x rappresenta lo stato dell arte di un RDBMS moderno, evoluto e molto maturo. In effetti, l anno scorso (2007), Sourceforge che è considerato il più grande sito web dedicato al software open source con più di progetti attivi, ha nominato Firebird come il miglior software aziendale ed il software con milgior supporto per gli utenti. Riconoscimenti del genere non rappresentano delle novità per Firebird e sono del tutto certo che presto sarà votato come il miglior RDBMS in circolazione indipendentemente dal prezzo. Confrontato con altri più popolari RDBMS come MySQL e Postgres, Firebird sta completamente su un altro pianeta, soprattutto rispetto a MySQL. Infatti, MySQL è un semplice file manager con estensioni SQL e null altro; perciò è dovuta la sua sbandierata velocità. Firebird è un vero RDBMS con caratteristiche professionali native come l integrità referenziale dei dati, le stored procedure e i trigger; caratteristiche che non possono assolutamente mancare in un RDBMS degno di questo nome. Postgres è sicuramente il più vicino a Firebird, come caratteristiche e qualità, ma solo per chi lo utilizza sotto UNIX. Infatti, sotto Windows, Postgres gira sotto emulazione dell ambiente UNIX che lo rende notevolmente pesante e poco adatto per un utilizzo serio. Solo le ultime versioni di Postgres sono state compilate nativamente per Windows che rimane comunque più pesante e richiede maggior risorse di Firebird Super Server. Sembra che nelle ultime versioni di MySQL sono state implementate l itegrità referenziale, le stored procedeure e i trigger; ma ci vuole ancora molto tempo e diverse versioni per raggiungere le stesse implementazioni di Firebird native da oltre vent anni. Un altro punto a sfavore di MySQL è la sua ambigua licenza d uso. Infatti, è gratuito solo a certe strette condizioni, per tutto il resto è a pagamento. 9

11 1.2. Firebird embedded (Introduzione) Un altra caratteristica che rende Firebird senza confronti con altri RDBMS per lo sviluppo di applicazioni client/server e web è la sua completa integrazione con molti linguaggi di programmazione, ed in modo particolare con Delphi. In più, sono disponibili gratuitamente ottimi strumenti grafici per la realizzazione, i test e la gestione di database Firebird. Firebird gira su diversi sistemi operativi (Linux, Windowxs, Mac, Solaris...) in modalità nativa e senza nessuna emulazione. In più, un database Firebird è composto da un unico file con formato indipendente dal sistema operativo e perciò, un database sviluppato su Windows può essere usato, senza nessuna modifica, su un sistema UNIX o Mac. 1.2 Firebird embedded Insieme a Firebird Server, nella distribuzione ufficiale, troviamo una versione leggera di Firebird adatta per le applicazioni desktop che necessitano di un database server locale senza la necessità delle parti server. Firebird embedded è la soluzione ideale in questo caso ed in effetti offre tutta la potenza e le funzionalità di Firebird senza le funzioni server. Questa versione di Firebird è composta solo di alcuni DLL da copiare nella stessa directory dell applicazione senza l aggiunta di altro. 1.3 Vulcano La versione Firebird 2.x rappresenta il punto di arrivo di un RDBMS che ha raggiunto lo stato dell arte, ma anche il punto di partenza per nuovi orizzonti che nel nostro caso si chiamano distribuzioni e repliche. Vulcano, ossia Firebird 3.x sta puntando giusto a queste nuove direzioni. 1.4 Il futuro di Firebird Roseo. Molto roseo. Il fattore più determinante per mantenere un software in vita e farlo crescere in continuazione è la sua comunità di utenti. Come è stato accennato prima, Firebird fu scelto l anno scorso da Sourceforge come il prodotto con il miglior supporto. Così la già larghissima comunità internazionale di utenti è in continua crescita e costituisce una vera garanzia per il futuro di Firebird. Investire su Firebird è conveniente soprattutto a lungo termine vista l importanza e sempre più crescente gestione dei dati e dell informazione nella nostra vita. Per concludere, voglio ringraziare la Borland per questo dono, e soprattutto la IBPhoenix che sta faccendo di Firebird il miglior RDBMS al miglior prezzo. PROSSIMO CAPITOLO Caratteristiche di Firebird 10

12 CAPITOLO 2 CARATTERISTICHE DI FIREBIRD Firebird per le piattaforme Windows NT/2000/XP... e Unix, in versione freeware ed open source, offre le caratteristiche più moderne ed avanzate di un vero e moderno RDBMS. Firebird è un database server SQL estrememente potente, flessibile e versatile che soddisfa le più svariate esigenze del singole utente e dell azienda di qualsiasi dimensioni. È open source ed è gratuito anche per un utilizzo professionale, aziendale e commerciale. Ecco le principali peculiarità di Firebird: 1. Supporta il protocollo di networking TCP/IP su tutte le piattaforme garantendo l utilizzo di Firebird come SQL server sia nelle applicazioni client/server sia in quelle web con completa trasparenza. 2. Il nuovo protocollo XNET è ora usato come protocollo di default sotto Windows. 3. Implementa le specifiche A.C.I.D.; cioè il concetto di atomicità, isolamento e durabilità. 4. È conforme allo SQL-92 Entry Level. Si può usare lo standard ANSI SQL per scrivere delle query portabili tra piattaforme diverse. In più, Firebird ha delle estensioni che anticipano l SQL3 come le stored procedure e i trigger nonché altre dell SQL200X. E Possibile accedere contemporaneamente ad un database Firebird da più applicazioni permettendo a più client di lavorare con gli stessi dati in conformità al modello client/server. 5. Un applicazione può accedere contemporaneamente a più database. 6. Architettura multigenerazionale. Cioè, il server, in base alle esigenze, mantiene una copia dei vecchi record da ripristinare nel caso in cui una transazione fallisca. 7. Supporta le transazioni. Una funzionalità indispensabile per garantire l esito di un operazione di inserimento, aggiornamento o cancellazione di un dato. 8. Quando un record viene aggiornato da un client, avviene il blocco del singolo record anziché dell intera pagina. In questo modo gli altri record sono manipolabili liberamente da altri client. 11

13 (Caratteristiche di Firebird) 9. Ottimizzazione delle query a livello di server o manualmente dall utente. Quando viene scritto del codice SQL, Firebird, prima di eseguirlo, cerca di ottimizzarlo grazie al suo optimizer interno. 10. Gestione del tipo di dato BLOB con possibilità di memorizzare dati di qualsiasi genere (immagini, suoni, animazioni, testi...). 11. Integrità referenziale dei dati con possibilità di riferire una chiave primaria con una o più chiavi esterne mantenendo collegamenti tra colonne di diverse tabelle. 12. Stored procedure. Sono delle applicazioni SQL che vengono memorizzate all interno del database e vengono eseguite a livello di server. Offrono una grande flessibilità e potenza per svolgere i compiti più impensabili e bilanciare il carico di lavoro tra il client ed il server. 13. Trigger. Sono simili alle stored procedure ma non vengono mai eseguiti esplicitamente; svolgono le loro azioni in seguito a modifiche apportate alle tabelle (inserimento, modifica o eliminazione di un dato). Sono utili quando si cerca di ottenere un determinato risultato in seguito ad una azione specifica. 14. Messaggi di allerta che informano un applicazione delle modifiche avvenute nel database ed in seguito alle quali l applicazione è chiamata a svolgere delle specifiche azioni. 15. Viste aggiornabili in seguito ad eventi stabiliti. 16. UDF (User Defined Functions), ossia, funzioni definite dall utente che permettono di scrivere programmi esterni che possono essere eseguite da codice SQL dall interno del database. 17. Collegamento tra diverse tabelle con possibilità di eseguire su di esse delle query anche molto complesse. La lettura dei dati non è bloccante. Tutti i client possono leggere contemporaneamente gli stessi record. Uso delle matrici fino a 16 dimensioni. 18. Possibilità di richiamare le API di Firebird tramite codice SQL/DSQL (Dynamic SQL) in modo del tutto trasparente. 19. Possibilità di gestione di Firebird tramite l applicazione grafica windows IBConsole. Sono garantite l esecuzione delle query e le operazioni di backup, restore, manutenzione e gestione della sicurezza. 20. isql, ossia Interactive SQL, è un applicazione a linea di comando, multipiattaforma e serve per una totale gestione di Firebird. 21. gpre, è un preprocessore per convertire codice embedded SQL/DSQL in formati leggibili da linguaggi esterni. Ciò ci permette di scrivere applicazioni esterne in altri linguaggi, in C in modo particolare, all interno delle quali possiamo inserire del codice SQL. In questo modo possiamo ottenere un elevata efficienza ed aggiungere alle nostre applicazioni qualsiasi altra funzionalità. 22. Database di sola lettura. E possibilibe rendere un database accessibile solo per la lettura da impedire eventuali modifiche ai dati. Questa caratteristica è molto utile quando si distribuiscono programmi in CD-ROM con la versione embedded di Firebird. Come vedete, Firebird possiede tutte le migliori caratteristiche per sviluppare database di tutto rispetto per applicazioni client/server e web per uso professionali. 12

14 2.1. Firebird e SQL (Caratteristiche di Firebird) ATTENZIONE L ODS (On-Disk Struture) di Firebird è incompatibile con quello delle precedenti versioni. Perciò, il funzionamento di database creati con le precedenti versioni non è garantito con quella attuale. Rispetto alla versione precedente, Firebird ha introdotto grandi novità sia a livello interno dell RDBMS, sia a livello di linguaggio SQL. Queste novità saranno segnalate nelle relative sezioni. Firebirdversione embedded è considerato un prodotto autonomo ed è indicato per le applicazioni desktop che non condividono dati con altre applicazioni e non richiedono un database server. ATTENZIONE La versione embedded di Firebird è un database server locale non possiede alcune caratteristiche di quella server come l accesso da client remoti o un proprio sistema di sicurezza. 2.1 Firebird e SQL L implementazione del linguaggio SQL in Firebird è conforme allo standard SQL-92 entry-level con estensioni provenienti dall SQL3 e dall SQL200X. Supporta l integrità referenziale, viste aggiornabili, collegamento tra tabelle (inner e outer join), tabelle derivate... Firebird dispone di una completa libreria per lo sviluppo di applicazioni client in embedded SQL e DSQL. Su tutte le piattaforme, le applicazioni client possono accedere direttamente alle API di Firebirded eseguire delle operazioni direttamente sui database residenti sul server. NOTA BENE SEQUENCE (definito nell SQL-99) è un sostituto di GENERATOR (solo InterBase/Firebird). L utilizzo di SEQUENCE è raccomandato. Tra le novità più interessanti di Firebirda livello di SQL: E possibile utilizzare le tabelle derivate (come sottoquery nella clausola FROM) come sono state definite nell SQL200X. Una tabella derivata è un insieme di record ottenuto dall istruzione SELECT che può essere combinata con altre istruzioni SQL per eseguire query complesse. Ora si possono assegnare dei nomi ai cursori in PSQL e DSQL. Nuove funzioni di ricerca all interno delle stringhe. E possibile includere un testo per la descrizione di un generatore. Il parser DSQL ora è in grado di riportare la linea e la colonna di un istruzione incompleta. 13

15 2.2. Firebird Classic e SuperServer (Caratteristiche di Firebird) L attuale implementazione del linguaggio SQL di Firebirdpuò essere ritenuta completa ed è una delle migliori per lo sviluppo di database server ricche di funzionalità mantenando un estrema semplicità, leggerezza ed eleganza per applicazioni client/server perforanti, affidabili, distribuite ed altamente scalabili. 2.2 Firebird Classic e SuperServer Le versioni 4.0 e precedenti di Firebird erano basate su una architettura denominata Classic, perché le connessioni multiple si basavano essenzialmente sui processi come sono stati implementati su UNIX. Cioè, ogni volta che un client si connette al database, gli si crea un proprio processo nel quale gira il motore del database, con una cache dedicata. Questo richiede la sincronizzazione degli accessi contemporanei alle singole pagine tra i vari processi. Possiamo dire che in questo modo Firebird Classic gira come se fosse un insieme di processi attivabili su richiesta. Quella SuperServer, invece, serve molti client nello stesso momento usando i thread al posto dei processi. Vari thread possono girare all interno di un singolo processo. La nuova architettura è molto efficiente quando il numero dei client collegati contemporaneamente diventa elevato. NOTA BENE Ricordiamo però che il modello SuperServer potrebbe essere implementabile solo su quei sistemi operativi multi-threaded, tipo Linux/- FreeBSD e Windows NT/2000/XP. Anche se il modello Classic continuerà ad essere proposto ed utilizzato, essendo ormai maturo e collaudato, gli sviluppatori di Firebird puntano molto di più in futuro sul modello SuperServer. Comuqnue per l utente finale le differenze tra le due versioni sono solo interne e l utilizzo di entrambe rimane del tutto trasparente. 2.3 Firebird Dialect-1, 2 e 3 La prima versione di Firebird ha introdotto diverse novità che hanno avuto come conseguenza l alterazione di alcuni meccanismi interni del motore del database. Quindi, bisognava introdurre qualche artificio per poter ancora utilizzare vecchi database ed applicazioni create con le precedenti versioni. La soluzione è stata nell introduzione dei dialetti che hanno il compito di controllare l appartenenza o meno di una estensione ad una determinata versione. In questo modo si garantisce una certa compatibilità tra le diverse versioni. In poche parole, il dialetto 1 corrisponde alle notazioni e funzionalità della versione precedente InterBase 5.6. Il dialetto 2, invece, serve solo nel caso di debugging. Cioè, viene segnalato un errore nel caso in cui viene usata una funzione oppure un comando con implementazione diversa da quella precedente. Per esempio, la variabile DATE nella nuova versione è di tipo diverso da quella della precedente. Il dialetto 3, infine, rappresenta le nuove funzionalità e le estensioni relative solo all ultima versione. 14

16 2.4. Amministrazione dei Database (Caratteristiche di Firebird) NOTA BENE L aspetto dei dialetti è da tenere in seria considerazione da parte di tutti coloro che vogliono migrare alla nuova versione di Firebird, avendo dati e applicazioni realizzati con versioni precedenti. 2.4 Amministrazione dei Database Firebird prevede l amministrazione dei database tramite diverse applicazioni a riga di conado e grafiche sia per Windows, sia per Linux, alcune sono freeware ed open source. Grazie a queste applicazioni è possibile gestire graficamente un database remoto. Quello che personalmente trovo semplice e comodo da utilizzare su Windows è IBConsole con il quale è possibile: Gestire la sicurezza. Fare il backup e il restore. Provvedere alla manutenzione del database. Vedere i dati statistici. Scrivere ed eseguire al volo query SQL su un database. Questa caratteristica è sicuramente quella più comoda e comunemente più utilizzata dagli utenti. Comunque, tutte le funzionalità di IBOConsole si possono ottenere con i tool a riga di comando che hanno il notevole pregio di essere eseguite in sequenza all interno di applicazioni script. NOTA BENE Molte operazioni critiche, di routine o con esecuzione manuale delicata perché richiedono l introduzione di diversi parametri vengono automatizzate grazie a delle script scritte ad hoc che non fanno altro che lanciare in una data sequenza alcune applicazioni console di Firebird con alcuni parametri Gestione della sicurezza Firebirdmantiene i nomi degli utenti e delle loro password nel database security2.gdb. Il suo sistema di sicurezza interno permette di controllare la validità del nome e della password di un utente che si connette al database confrontando i dati emessi dall utente con quelli contenuti in security2.gdb. I tool standard forniti con Firebirdpermettono di aggiungere nuovi utenti, eliminare quelli esistenti o modificare i loro profili Backup e restore Per fare il backup o il restore di un database, si può usare l utility gbak o l applicazione IBConsole in modalità grafica. L operazione di backup potrebbe essere 15

FileMaker 12. Guida ODBC e JDBC

FileMaker 12. Guida ODBC e JDBC FileMaker 12 Guida ODBC e JDBC 2004 2012 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker e Bento sono marchi di FileMaker, Inc.

Dettagli

Ministero dell Istruzione dell Università e della Ricerca M070 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE

Ministero dell Istruzione dell Università e della Ricerca M070 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE Pag. 1/1 Sessione ordinaria 2010 Seconda prova scritta Ministero dell Istruzione dell Università e della Ricerca M070 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE CORSO DI ORDINAMENTO Indirizzo: INFORMATICA

Dettagli

Il DBMS Oracle. Express Edition. Donatella Gubiani e Angelo Montanari

Il DBMS Oracle. Express Edition. Donatella Gubiani e Angelo Montanari Gubiani & Montanari Il DBMS Oracle 1 Il DBMS Oracle Express Edition Donatella Gubiani e Angelo Montanari Il DBMS Oracle Il DBMS Oracle Oracle 10g Express Edition Il DBMS Oracle (nelle sue versioni più

Dettagli

Basi di dati. Il Linguaggio SQL. K. Donno - Il Linguaggio SQL

Basi di dati. Il Linguaggio SQL. K. Donno - Il Linguaggio SQL Basi di dati Il Linguaggio SQL Data Definition Language (DDL) Data Definition Language: insieme di istruzioni utilizzate per modificare la struttura della base di dati Ne fanno parte le istruzioni di inserimento,

Dettagli

Tool. Basi di Dati e Sistemi Informativi Prof. Marco Di Felice Dott.sa Sara Zuppiroli A.A. 2012-2013

Tool. Basi di Dati e Sistemi Informativi Prof. Marco Di Felice Dott.sa Sara Zuppiroli A.A. 2012-2013 Tool Basi di Dati e Sistemi Informativi Prof. Marco Di Felice Dott.sa Sara Zuppiroli A.A. 2012-2013 Basi di Dati e Sistemi Informativi () PostgreSQL A.A. 2012-2013 1 / 26 Gli strumenti che vedremo Basi

Dettagli

Esercitazione 8. Basi di dati e web

Esercitazione 8. Basi di dati e web Esercitazione 8 Basi di dati e web Rev. 1 Basi di dati - prof. Silvio Salza - a.a. 2014-2015 E8-1 Basi di dati e web Una modalità tipica di accesso alle basi di dati è tramite interfacce web Esiste una

Dettagli

User Tools: DataBase Manager

User Tools: DataBase Manager Spazio di lavoro Per usare T-SQL Assistant selezionare il link Simple Query e spostare a piacere la piccola finestra dove un menu a tendina mostra i diversi comandi SQL selezionabili, il pulsante Preview

Dettagli

INFORMATICA. Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE.

INFORMATICA. Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE. INFORMATICA Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE. APPLICAZIONI WEB L architettura di riferimento è quella ampiamente diffusa ed

Dettagli

Questo punto richiederebbe uno sviluppo molto articolato che però a mio avviso va al di là delle possibilità fornite al candidato dal tempo a disposizione. Mi limiterò quindi ad indicare dei criteri di

Dettagli

DUE GRUPPI DI COMANDI

DUE GRUPPI DI COMANDI LEZIONE16 SQL DDL PAG. 1 / 9 PROF. ANDREA ZOCCHEDDU LEZIONE16 SQL DDL LINGUAGGIO SQL DATA DESCRIPTION LANGUAGE DUE GRUPPI DI COMANDI I comandi del linguaggio SQL sono divisi in due grandi gruppi che formano

Dettagli

Corso di Informatica Generale 1 IN1. Linguaggio SQL

Corso di Informatica Generale 1 IN1. Linguaggio SQL Università Roma Tre Facoltà di Scienze M.F.N. di Laurea in Matematica di Informatica Generale 1 Linguaggio SQL Marco (liverani@mat.uniroma3.it) Sommario Prima parte: le basi dati relazionali Basi di dati:

Dettagli

DDL, VINCOLI D INTEGRITÁ, AGGIORNAMENTI E VISTE. SQL è più di un semplice linguaggio di interrogazione

DDL, VINCOLI D INTEGRITÁ, AGGIORNAMENTI E VISTE. SQL è più di un semplice linguaggio di interrogazione SQL DDL, VINCOLI D INTEGRITÁ, AGGIORNAMENTI E VISTE SQL è più di un semplice linguaggio di interrogazione! Linguaggio di definizione dati (Data-definition language, DDL):! Crea/distrugge/modifica relazioni

Dettagli

Vincoli di Integrità Approccio dichiarativo alla loro implementazione

Vincoli di Integrità Approccio dichiarativo alla loro implementazione Vincoli di Integrità Approccio dichiarativo alla loro implementazione Antonella Poggi Dipartimento di informatica e Sistemistica SAPIENZA Università di Roma Progetto di Applicazioni Software Anno accademico

Dettagli

Laboratorio di Basi di Dati

Laboratorio di Basi di Dati Laboratorio di Basi di Dati Docente: Alberto Belussi Lezione 1 SQL SQL (Structured Query Language) è stato definito nel 1973 ed è oggi il linguaggio più diffuso per i DBMS relazionali. Sono stati proposti

Dettagli

Capitoli 8 e 9. SQL embedded. Applicazioni tradizionali Applicazioni Internet. Sistemi di basi di dati Raghu Ramakrishnan, Johannes Gehrke

Capitoli 8 e 9. SQL embedded. Applicazioni tradizionali Applicazioni Internet. Sistemi di basi di dati Raghu Ramakrishnan, Johannes Gehrke Capitoli 8 e 9 Applicazioni tradizionali Applicazioni Internet SQL embedded SQL nel codice applicativo I comandi SQL possono essere chiamati dall interno di un programma in un linguaggio ospite (ad esempio

Dettagli

ORACOLO Gestione questionari.

ORACOLO Gestione questionari. ORACOLO Gestione questionari. Oracolo è un software di gestione questionari e test nato per raccolta dati ad uso scientifico. Oracolo è adatto a raccogliere dati su questionari personalizzabili di qualunque

Dettagli

PROGRAMMA DI CLASSE 5AI

PROGRAMMA DI CLASSE 5AI Istituto di Istruzione Superiore Euganeo Istituto tecnico del settore tecnologico Istituto professionale del settore servizi socio-sanitari Istituto professionale del settore industria e artigianato PROGRAMMA

Dettagli

Basi di Dati prof. Letizia Tanca lucidi ispirati al libro Atzeni-Ceri-Paraboschi-Torlone. SQL: il DDL

Basi di Dati prof. Letizia Tanca lucidi ispirati al libro Atzeni-Ceri-Paraboschi-Torlone. SQL: il DDL Basi di Dati prof. Letizia Tanca lucidi ispirati al libro Atzeni-Ceri-Paraboschi-Torlone SQL: il DDL Parti del linguaggio SQL Definizione di basi di dati (Data Definition Language DDL) Linguaggio per modificare

Dettagli

RenderCAD S.r.l. Formazione

RenderCAD S.r.l. Formazione Corso Descrizione La durata di questo corso è complessivamente di ore 150 di cui 85 ore di teoria, 35 ore di pratica e 30 ore di stage in azienda. Nel nostro territorio esiste una richiesta di tale figura,

Dettagli

L interfaccia a riga di comando di MySql

L interfaccia a riga di comando di MySql L interfaccia a riga di comando di MySql Una volta completata la procedura di installazione possiamo finalmente testare le funzionalità di MySQL. Sia che ci si trovi in ambiente Linux che Windows, l'interfaccia

Dettagli

Laboratorio di Basi di Dati e Web

Laboratorio di Basi di Dati e Web Laboratorio di Basi di Dati e Web Docente: Alberto Belussi Lezione 1 SQL Structured Query Language SQL è stato definito nel 1973 ed è oggi il linguaggio più diffuso per i DBMS relazionali Il linguaggio

Dettagli

SQL - Tipi di dato Il linguaggio SQL

SQL - Tipi di dato Il linguaggio SQL SQL - Tipi di dato Il linguaggio SQL I tipi di dato in SQL:1999 si suddividono in tipi predefiniti tipi strutturati tipi user-defined ci concentreremo sui tipi predefiniti i tipi predefiniti sono suddivisi

Dettagli

Il linguaggio SQL. Il linguaggio SQL. Il linguaggio SQL. SQL - Tipi di dato. SQL - Tipi di dato numerici. SQL - Tipi di dato numerici

Il linguaggio SQL. Il linguaggio SQL. Il linguaggio SQL. SQL - Tipi di dato. SQL - Tipi di dato numerici. SQL - Tipi di dato numerici Il linguaggio SQL Il linguaggio SQL il linguaggio SQL è un linguaggio per la definizione e la manipolazione dei dati, sviluppato originariamente presso il laboratorio IBM a San Jose (California) è diventato

Dettagli

Lezione 8. Metadati, Viste e Trigger

Lezione 8. Metadati, Viste e Trigger Lezione 8 Metadati, Viste e Trigger Pag.1 Metadati e catalogo di sistema I metadati sono dati a proposito dei dati (quali tabelle esistono?, quali campi contengono?, quante tuple contengono?, ci sono vincoli

Dettagli

ROUTINE E PROGRAMMAZIONE

ROUTINE E PROGRAMMAZIONE LEZIONE-TSQL-02 TRIGGER E PROCEDURE (VER03 PAG. 1 / 6 LEZIONE-TSQL-02 TRIGGER E PROCEDURE (VER03 T-SQL PROGRAMMAZIONE PARTE SECONDA ROUTINE E PROGRAMMAZIONE In TSQL è possibile definire alcune routine

Dettagli

Lezione 9. Applicazioni tradizionali

Lezione 9. Applicazioni tradizionali Lezione 9 Applicazioni tradizionali Pag.1 Sommario Concetti trattati in questa lezione: SQL nel codice applicativo Cursori API native ODBC Pag.2 SQL nel codice applicativo I comandi SQL possono essere

Dettagli

PHP 5. PHP ed i database. Database e tabelle. Struttura di un DB relazionale. Accesso a database

PHP 5. PHP ed i database. Database e tabelle. Struttura di un DB relazionale. Accesso a database PHP ed i database PHP 5 Accesso a database PHP funziona con molti database relazionale che includono: Oracle Access Postgres SQL Server MySQL Useremo MySQL poiché è semplice da usare, gratuito e molto

Dettagli

M070 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE

M070 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE Pag. 1/1 Sessione ordinaria 2009 Seconda prova scritta M070 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE CORSO DI ORDINAMENTO Indirizzo: INFORMATICA Tema di: INFORMATICA (Testo valevole per i corsi di

Dettagli

Introduzione al linguaggio SQL

Introduzione al linguaggio SQL Introduzione al linguaggio SQL Structured Query Language (Linguaggio Strutturato di Interrogazione di Database) prof. Cleto Azzani IPSIA MORETTO BRESCIA (2004) Che cos è un Data Base (Base di dati) Insieme

Dettagli

PostgreSQL 8.4. Associazione Italiana PostgreSQL Users Group www.itpug.org. ConfSL 2009 Speaker's Corner Bologna, 13 Giugno 2009

PostgreSQL 8.4. Associazione Italiana PostgreSQL Users Group www.itpug.org. ConfSL 2009 Speaker's Corner Bologna, 13 Giugno 2009 PostgreSQL 8.4 ITPUG - ConfSL 2009 - PostgreSQL 8.4-13 giugno 2009 Gabriele Bartolini gabriele.bartolini@2ndquadrant.it Associazione Italiana PostgreSQL Users Group www.itpug.org ConfSL 2009 Speaker's

Dettagli

Informatica B. Contenuti. Introduzione alle Basi di Dati e ai DBMS. Introduzione a dati e basi dati DBMS Modello dei dati

Informatica B. Contenuti. Introduzione alle Basi di Dati e ai DBMS. Introduzione a dati e basi dati DBMS Modello dei dati Informatica B Introduzione alle Basi di Dati e ai DBMS Contenuti Introduzione a dati e basi dati DBMS Modello dei dati Informazioni e dati Dato: elemento semanticamente significativo (data, codice, ecc.),

Dettagli

----------------------------------------------------------------------------

---------------------------------------------------------------------------- APPUNTI DI SQL Gli appunti qui forniti vogliono essere un riferimento scritto di alcuni degli argomenti trattati a lezione per gli studenti a cui vengono messi a disposizione. Non viene fornita alcuna

Dettagli

Lavorare con MySQL Parte Prima.

Lavorare con MySQL Parte Prima. Lavorare con MySQL Parte Prima. Data la particolarità dell argomento, ho deciso di dividerlo in due lezioni. Nella prima, si parlerà diffusamente di MySQL, cos è un DBMS, cos è l SQL, i campi supportati

Dettagli

Quesiti 6 e 7) - 9 - Creiamo il file query4.php su una piattaforma OPEN SOURCE usando in linguaggio PHP ospitato su un webserver APACHE per interrogare un database MYSQL. Tale file verrà attivato cliccando

Dettagli

Corso di Web programming Modulo T3 A2 - Web server

Corso di Web programming Modulo T3 A2 - Web server Corso di Web programming Modulo T3 A2 - Web server 1 Prerequisiti Pagine statiche e dinamiche Pagine HTML Server e client Cenni ai database e all SQL 2 1 Introduzione In questa Unità si illustra il concetto

Dettagli

I comandi del linguaggio DDL (Data Definition Language): CREATE E ALTER

I comandi del linguaggio DDL (Data Definition Language): CREATE E ALTER Caratteristiche generali del linguaggio SQL Il linguaggio SQL è il linguaggio usato per la gestione dei database relazionali, cioè dei database creati con un DBMS di tipo relazionale. Esso nacque nella

Dettagli

Definizione di domini

Definizione di domini Definizione di domini Come nei linguaggi ad alto livello (es. C) è possibile definire nuovi domini (tipi di dati) a partire da quelli predefiniti, anche se il costruttore è più limitato. create domain

Dettagli

PHP 5. Accesso a database

PHP 5. Accesso a database PHP 5 Accesso a database PHP ed i database PHP funziona con molti database relazionali che includono: Oracle Access Postgres SQL Server MySQL Useremo MySQL poiché è semplice da usare, gratuito e molto

Dettagli

DATABASE. www.andreavai.it

DATABASE. www.andreavai.it Cos'è un database? Quando si usa? Differenze con i fogli elettronici Le tabelle: record, campi, tipi di dati Chiavi e indici Database relazionali (R-DBMS) Relazioni uno-a-uno Relazioni uno-a-molti Relazioni

Dettagli

Ministero della Pubblica Istruzione Ufficio Scolastico Regionale per la Sicilia Direzione Generale

Ministero della Pubblica Istruzione Ufficio Scolastico Regionale per la Sicilia Direzione Generale Unione Europea Regione Sicilia Ministero della Pubblica Istruzione Ufficio Scolastico Regionale per la Sicilia Direzione Generale ISTITUTO TECNICO INDUSTRIALE STATALE G. MARCONI EDILIZIA ELETTRONICA e

Dettagli

DBMS e Linguaggi di programmazione nell'era di Internet

DBMS e Linguaggi di programmazione nell'era di Internet DBMS e Linguaggi di programmazione nell'era di Internet Crippa Francesco fcrippa@tiscalinet.it Crippa Francesco (GPL) 1 Programma del corso DBMS nati per il WEB: MySQL Postgres Il cuore del WWW, il web

Dettagli

Esercitazioni di Basi di Dati

Esercitazioni di Basi di Dati Esercitazioni di Basi di Dati A.A. 2008-09 Dispense del corso Utilizzo base di pgadmin III Lorenzo Sarti sarti@dii.unisi.it PgAdmin III PgAdmin III è un sistema di progettazione e gestione grafica di database

Dettagli

SQLSCHEDULER PER MS SQL SERVER EXPRESS

SQLSCHEDULER PER MS SQL SERVER EXPRESS KING Manuale Tecnico Documentazione ad uso esclusivo dell installatore della procedura SQLSCHEDULER PER MS SQL SERVER EXPRESS KING GESTIONALE - KING STUDIO - TURBODOC Aggiornato al 04/07/2011 DATALOG Soluzioni

Dettagli

Corso Sistemi Informativi Avanzati. Programma 30 set 2015. Installazione Macchina Virtuale. Introduzione alla BI nelle Aziende.

Corso Sistemi Informativi Avanzati. Programma 30 set 2015. Installazione Macchina Virtuale. Introduzione alla BI nelle Aziende. Programma 30 set 205 Installazione Macchina Virtuale Introduzione alla BI nelle Aziende Introduzione SQL Macchina Virtuale È un emulazione di un computer su un altro computer Stesso punto di partenza per

Dettagli

Esercitazione: Il DBMS MySQL

Esercitazione: Il DBMS MySQL Laurea in Ingegneria Informatica SAPIENZA Università di Roma Insegnamento di Basi di Dati Esercitazione: Il DBMS MySQL Marco Console Aspetti Organizzativi Marco Console Sito: www.dis.uniroma1.it/~console

Dettagli

Obiettivi d esame PHP Developer Fundamentals on MySQL Environment

Obiettivi d esame PHP Developer Fundamentals on MySQL Environment Obiettivi d esame PHP Developer Fundamentals on MySQL Environment 1.0 Ambiente di sviluppo 1.1 Web server e database MySQL Comprendere la definizione dei processi che si occupano di fornire i servizi web

Dettagli

Introduzione all Architettura del DBMS

Introduzione all Architettura del DBMS Introduzione all Architettura del DBMS Data Base Management System (DBMS) Un DBMS è uno strumento per la creazione e la gestione efficiente di grandi quantità di dati che consente di conservarli in modo

Dettagli

Indice generale. Capitolo 3 Introduzione a PHP...43 Sintassi e istruzioni di base... 45 Variabili, operatori e commenti... 47 Array...

Indice generale. Capitolo 3 Introduzione a PHP...43 Sintassi e istruzioni di base... 45 Variabili, operatori e commenti... 47 Array... Prefazione...xiii A chi si rivolge il libro... xiv Struttura e contenuti del libro... xiv Dove trovare aiuto... xvii Le newsletter di SitePoint... xviii I vostri commenti... xviii Convenzioni adottate

Dettagli

Corso di Laboratorio di Basi di Dati

Corso di Laboratorio di Basi di Dati Corso di Laboratorio di Basi di Dati F1I072 - INF/01 a.a 2009/2010 Pierluigi Pierini Technolabs S.p.a. Pierluigi.Pierini@technolabs.it Università degli Studi di L Aquila Dipartimento di Informatica Technolabs

Dettagli

Basi di dati Il linguaggio SQL

Basi di dati Il linguaggio SQL Basi di dati Il linguaggio SQL teoria e pratica con Microsoft Access Riepilogando Nelle basi di dati esiste 1. una parte invariante nel tempo, lo schema, costituita dalle caratteristiche dei dati (nomi

Dettagli

Basi di dati Il linguaggio SQL

Basi di dati Il linguaggio SQL Riepilogando Basi di dati Il linguaggio SQL Nelle basi di dati esiste 1. una parte invariante nel tempo, lo schema, costituita dalle caratteristiche dei dati (nomi degli attributi, domini, 2. una parte

Dettagli

Il linguaggio SQL: le basi

Il linguaggio SQL: le basi Il linguaggio SQL: le basi Sistemi Informativi L-A Home Page del corso: http://www-db.deis.unibo.it/courses/sil-a/ Versione elettronica: SQLa-basi.pdf Sistemi Informativi L-A SQL: caratteristiche generali

Dettagli

SISSI IN RETE. Requisiti hardware e software per l infrastruttura di rete sulla quale installare il prodotto

SISSI IN RETE. Requisiti hardware e software per l infrastruttura di rete sulla quale installare il prodotto R.T.I. Electronic Data Systems Ltd. Electronic Data Systems Italia S.p.A. Ferrovie dello Stato S.p.A. SISSI IN RETE Requisiti hardware e software per l infrastruttura di rete sulla quale installare il

Dettagli

ELCO Sistemi srl. Sistema di rilevazione presenze in ambiente windows

ELCO Sistemi srl. Sistema di rilevazione presenze in ambiente windows ELCO Sistemi srl 47100 ForlÏ Viale Roma 274/A Tel 0543.782754 37057 San Giovanni Lupatoto Via IV Novembre, 18 Tel 045.4857511 40064 Ozzano dellíemilia Via F.Ardeatine, 14 Tel 051.6511100 www.elcosistemi.it

Dettagli

DBMS (Data Base Management System)

DBMS (Data Base Management System) Cos'è un Database I database o banche dati o base dati sono collezioni di dati, tra loro correlati, utilizzati per rappresentare una porzione del mondo reale. Sono strutturati in modo tale da consentire

Dettagli

FileMaker 11. Guida ODBC e JDBC

FileMaker 11. Guida ODBC e JDBC FileMaker 11 Guida ODBC e JDBC 2004 2010 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker è un marchio di FileMaker, Inc. registrato

Dettagli

Che cos è un DBMS? Capitolo 1. Perché usare un DBMS? DBMS. Descrizioni dei dati nei DBMS. Modelli di dati

Che cos è un DBMS? Capitolo 1. Perché usare un DBMS? DBMS. Descrizioni dei dati nei DBMS. Modelli di dati Che cos è un DBMS? Capitolo 1 Introduzione ai sistemi di basi di dati Una collezione integrata molto grande di dati Modella organizzazioni del mondo reale Entità (ad esempio studenti, corsi) Relazioni

Dettagli

APPENDICE. Procedure in SQL (1)

APPENDICE. Procedure in SQL (1) APPENDICE Procedure in SQL Transazioni in SQL Embedded SQL Remote Procedure Call Appendice 1 Procedure in SQL (1) Standard SQL2 permette di definire procedure, associate a singoli comandi SQL, memorizzate

Dettagli

Il sistema IBM DB2. Sistemi Informativi T. Versione elettronica: L01.1.IntroduzioneDB2.pdf

Il sistema IBM DB2. Sistemi Informativi T. Versione elettronica: L01.1.IntroduzioneDB2.pdf Il sistema IBM DB2 Sistemi Informativi T Versione elettronica: L01.1.IntroduzioneDB2.pdf IBM DB2 Il DBMS relazionale IBM DB2 è il prodotto di punta dell IBM per la gestione di basi di dati relazionali

Dettagli

DB2 Universal Database (UDB) DB2 Universal Database (UDB)

DB2 Universal Database (UDB) DB2 Universal Database (UDB) DB2 Universal Database (UDB) Sistemi Informativi L-A Home Page del corso: http://www-db.deis.unibo.it/courses/sil-a/ Versione elettronica: DB2Presentazione2009.pdf Sistemi Informativi L-A DB2 Universal

Dettagli

Uso dei data bases con PHP. Prof. Francesco Accaino Iis Altiero Spinelli Sesto Sa Giovanni

Uso dei data bases con PHP. Prof. Francesco Accaino Iis Altiero Spinelli Sesto Sa Giovanni Uso dei data bases con PHP Prof. Francesco Accaino Iis Altiero Spinelli Sesto Sa Giovanni MDAC MDAC è l acronimo di Microsoft Data Access Component e fa parte della tecnologia Microsoft denominata Universal

Dettagli

SQL: Concetti Base -Prima Parte-

SQL: Concetti Base -Prima Parte- SQL: Concetti Base -Prima Parte- Atzeni, Ceri, Paraboschi, Torlone Basi Di Dati: Modelli e Linguaggi di Interrogazione, McGraw-Hill Italia Capitolo 4 SQL Structured Query Language Contiene: DDL (Data Definition

Dettagli

Applicazione client-server in PHP con database MySQL

Applicazione client-server in PHP con database MySQL Applicazione client-server in PHP con database MySQL Emanuele Scapin 1 1 Liceo Statale F.Corradini, via Milano 1, 36016 Thiene 30/05/2012 1 Premessa Dopo la trattazione di argomenti teorici di progettazione

Dettagli

Valutazione del sistema di storage EMC CLARiiON AX4

Valutazione del sistema di storage EMC CLARiiON AX4 Valutazione del sistema di storage EMC CLARiiON AX4 Relazione preparata sotto contratto con EMC Introduzione EMC Corporation ha incaricato Demartek di eseguire una valutazione pratica del nuovo sistema

Dettagli

Al giorno d oggi, i sistemi per la gestione di database

Al giorno d oggi, i sistemi per la gestione di database Introduzione Al giorno d oggi, i sistemi per la gestione di database implementano un linguaggio standard chiamato SQL (Structured Query Language). Fra le altre cose, il linguaggio SQL consente di prelevare,

Dettagli

Corso di Informatica. Prerequisiti. Modulo T3 B3 Programmazione lato server. Architettura client/server Conoscenze generali sui database

Corso di Informatica. Prerequisiti. Modulo T3 B3 Programmazione lato server. Architettura client/server Conoscenze generali sui database Corso di Informatica Modulo T3 B3 Programmazione lato server 1 Prerequisiti Architettura client/server Conoscenze generali sui database 2 1 Introduzione Lo scopo di questa Unità è descrivere gli strumenti

Dettagli

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER L architettura CLIENT SERVER è l architettura standard dei sistemi di rete, dove i computer detti SERVER forniscono servizi, e computer detti CLIENT, richiedono

Dettagli

SQL: concetti base SQL. Definizione dei dati in SQL. SQL: "storia"

SQL: concetti base SQL. Definizione dei dati in SQL. SQL: storia SQL SQL: concetti base originariamente "Structured Query Language", ora "nome proprio" linguaggio con varie funzionalità: contiene sia il DDL sia il DML ne esistono varie versioni vediamo gli aspetti essenziali,

Dettagli

Architettura MySQL. E Motori MySQL

Architettura MySQL. E Motori MySQL E Motori MySQL Caratteristiche Differente dagli altri DBMS Non perfetta Ma flessibile Gestisce DataWarehouses, OLTP, ecc. Architettura delle Storage Engine Separa il query processing dai task di memorizzazione

Dettagli

Modulo Gestione Interventi Tecnici. Il prezioso assistente che mancava alla tua impresa. www.sit-web.it

Modulo Gestione Interventi Tecnici. Il prezioso assistente che mancava alla tua impresa. www.sit-web.it Modulo Gestione Interventi Tecnici Il prezioso assistente che mancava alla tua impresa via Supporta i seguenti browser: Internet Explorer 6 e seguenti Opera 8 e seguenti Mozilla Firefox 0.8x Mozilla Firefox

Dettagli

MERCURIO Gestione magazzino, contabilità, documenti.

MERCURIO Gestione magazzino, contabilità, documenti. MERCURIO Gestione magazzino, contabilità, documenti. Mercurio è un software di gestione per aziende. Con Mercurio è possibile: - Gestire anagrafiche clienti, fornitori, articoli di magazzino; - Gestire

Dettagli

Introduzione a MySQL

Introduzione a MySQL Introduzione a MySQL Cinzia Cappiello Alessandro Raffio Politecnico di Milano Prima di iniziare qualche dettaglio su MySQL MySQL è un sistema di gestione di basi di dati relazionali (RDBMS) composto da

Dettagli

Corso di PHP. Prerequisiti. 1 - Introduzione

Corso di PHP. Prerequisiti. 1 - Introduzione Corso di PHP 1 - Introduzione 1 Prerequisiti Conoscenza HTML Principi di programmazione web Saper progettare un algoritmo Saper usare un sistema operativo Conoscere il concetto di espressione 2 1 Introduzione

Dettagli

LABORATORIO DI TELEMATICA

LABORATORIO DI TELEMATICA LABORATORIO DI TELEMATICA COGNOME: Ronchi NOME: Valerio NUMERO MATRICOLA: 41210 CORSO DI LAUREA: Ingegneria Informatica TEMA: Analisi del protocollo FTP File Transfer Protocol File Transfer Protocol (FTP)

Dettagli

La parte client è invece un programma che si chiama mysql. Gli altri eseguibili (client) fondamentali sono mysqladmin, mysqldump.

La parte client è invece un programma che si chiama mysql. Gli altri eseguibili (client) fondamentali sono mysqladmin, mysqldump. Panoramica MySQL MySQL è un RDBMS free ed open source, nativo dell ambiente Linux ma disponibile anche su piattaforme Windows e MAC OS. E stato pensato come prodotto leggero come contenitore di dati a

Dettagli

MANUALE ESSENZIALE MYSQL

MANUALE ESSENZIALE MYSQL Autore: Classe: Luciano Viviani TERZA INFORMATICA SERALE (3IS) Anno scolastico: 2003/2004 Scuola: Itis Euganeo MANUALE ESSENZIALE MYSQL Manuale La dispensa vuole fornire agli studenti delle classi quinte

Dettagli

SCP: SCHEDULER LAYER. a cura di. Alberto Boccato

SCP: SCHEDULER LAYER. a cura di. Alberto Boccato SCP: SCHEDULER LAYER a cura di Alberto Boccato PREMESSA: Negli ultimi tre anni la nostra scuola ha portato avanti un progetto al quale ho partecipato chiamato SCP (Scuola di Calcolo Parallelo). Di fatto

Dettagli

Indice generale. Parte I Le nozioni di base... 9. Introduzione...xiii. Presentazione... 1. Capitolo 1 Un po di teoria...11

Indice generale. Parte I Le nozioni di base... 9. Introduzione...xiii. Presentazione... 1. Capitolo 1 Un po di teoria...11 Indice generale Introduzione...xiii A chi si rivolge il libro...xiii Organizzazione del libro... xiv Novità rispetto alla precedente edizione del libro... xv Convenzioni adottate... xv Presentazione...

Dettagli

Laboratorio di reti II: Gestione di database lato server

Laboratorio di reti II: Gestione di database lato server Laboratorio di reti II: Gestione di database lato server Stefano Brocchi brocchi@dsi.unifi.it 23 marzo, 2009 Stefano Brocchi Laboratorio di reti II: Database 23 marzo, 2009 1 / 32 Uso di database lato

Dettagli

Suggerimenti per lo Sviluppo delle Applicazioni con PL/SQL. Simona Rotolo

Suggerimenti per lo Sviluppo delle Applicazioni con PL/SQL. Simona Rotolo Suggerimenti per lo Sviluppo delle Applicazioni con PL/SQL Simona Rotolo 2 Questo documento, rivolto a chi sviluppa codice in PL/Sql, è stato redatto al fine di fornire degli standard di sviluppo che aiuteranno

Dettagli

SQL (STRUCTURED QUERY LANGUAGE)

SQL (STRUCTURED QUERY LANGUAGE) SQL (STRUCTURED QUERY LANGUAGE) Prof. Nicoletta D Alpaos & Prof. Andrea Borghesan SQL DDL Data Definition Language DML Data Manipulation Language DCL Data Control Language DDL Obiettivo: Definire la struttura

Dettagli

Sistemi Operativi STRUTTURA DEI SISTEMI OPERATIVI 3.1. Sistemi Operativi. D. Talia - UNICAL

Sistemi Operativi STRUTTURA DEI SISTEMI OPERATIVI 3.1. Sistemi Operativi. D. Talia - UNICAL STRUTTURA DEI SISTEMI OPERATIVI 3.1 Struttura dei Componenti Servizi di un sistema operativo System Call Programmi di sistema Struttura del sistema operativo Macchine virtuali Progettazione e Realizzazione

Dettagli

PHP Survival Kit (Ovvero gestire un database MySQL tramite PHP)

PHP Survival Kit (Ovvero gestire un database MySQL tramite PHP) PHP Survival Kit (Ovvero gestire un database MySQL tramite PHP) Augusto Scatolini (webmaster@comunecampagnano.it) (a.scatolini@linux4campagnano.net) Miniguida n. 183 Ver. 1.0 aprile 2013 La prima guida

Dettagli

RADAR. Raccolta e Analisi Dati per Attribuzione Rating

RADAR. Raccolta e Analisi Dati per Attribuzione Rating RADAR Raccolta e Analisi Dati per Attribuzione Rating RADAR è un software di supporto alla direzione aziendale e a chiunque voglia tenere sotto controllo l andamento dell azienda con l ausilio di indicatori

Dettagli

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2014-15. Pietro Frasca.

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2014-15. Pietro Frasca. Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2014-15 Pietro Frasca Lezione 5 Martedì 21-10-2014 Thread Come abbiamo detto, un processo è composto

Dettagli

Laboratorio Progettazione Web PHP e MySQL. Andrea Marchetti IIT-CNR 2013/2014

Laboratorio Progettazione Web PHP e MySQL. Andrea Marchetti IIT-CNR 2013/2014 Laboratorio Progettazione Web PHP e MySQL Andrea Marchetti IIT-CNR 2013/2014 Architettura di una applicazione Web Browser Web HTTP Server Web API Dati Presentation Application Storage PHP e DataBase Quando

Dettagli

Sistemi avanzati di gestione dei Sistemi Informativi

Sistemi avanzati di gestione dei Sistemi Informativi Esperti nella gestione dei sistemi informativi e tecnologie informatiche Sistemi avanzati di gestione dei Sistemi Informativi Docente: Email: Sito: Eduard Roccatello eduard@roccatello.it http://www.roccatello.it/teaching/gsi/

Dettagli

Basi di Dati: Corso di laboratorio

Basi di Dati: Corso di laboratorio Basi di Dati: Corso di laboratorio Lezione 2 Raffaella Gentilini 1 / 45 Sommario 1 Il DDL di SQL: Cancellazione ed Aggiornamento di una BD Cancellazione di Schemi, Tabelle, e Domini Aggiornamento di Tabelle

Dettagli

Indice. Introduzione PARTE PRIMA L ARCHITETTURA DEI DATABASE 1

Indice. Introduzione PARTE PRIMA L ARCHITETTURA DEI DATABASE 1 Indice Introduzione XI PARTE PRIMA L ARCHITETTURA DEI DATABASE 1 Capitolo 1 Introduzione all architettura di Oracle 3 1.1 I database e le istanze 3 1.2 Installazione del software 9 1.3 Creazione di un

Dettagli

Database & FreeBSD. Come configurare il sistema operativo ottimizzando le prestazioni sul DB. GufiCon#3 Milano, 12 Ottobre 2002

Database & FreeBSD. Come configurare il sistema operativo ottimizzando le prestazioni sul DB. GufiCon#3 Milano, 12 Ottobre 2002 Database & FreeBSD Come configurare il sistema operativo ottimizzando le prestazioni sul DB GufiCon#3 Milano, 12 Ottobre 2002 Gianluca Sordiglioni inzet@gufi.org I database sono applicazioni particolari

Dettagli

DBMS open source: Postgres

DBMS open source: Postgres C DBMS open source: Postgres Lo sviluppo del mondo dell open source rappresenta sicuramente uno dei fenomeni recenti di maggiore impatto nel mondo dell informatica. Sfruttando le caratteristiche di facile

Dettagli

Laboratorio Progettazione Web PHP e MySQL - Lezione 9. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2012/2013

Laboratorio Progettazione Web PHP e MySQL - Lezione 9. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2012/2013 Laboratorio Progettazione Web PHP e MySQL - Lezione 9 Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2012/2013 Architettura di una applicazione Web Browser Web HTTP Server Web API Dati Presentation

Dettagli

A. Bardine - Introduzione a PostgreSQL. PostgreSQL è un software relazionale e ad oggetti per la gestione di basi di dati

A. Bardine - Introduzione a PostgreSQL. PostgreSQL è un software relazionale e ad oggetti per la gestione di basi di dati Basi di dati PostgreSQL è un software relazionale e ad oggetti per la gestione di basi di dati PostgreSQL è Open-Source ed il suo sviluppo procede da 15 anni il suo codice sorgente è quindi disponibile

Dettagli

Accesso ai dati in C++ moderno

Accesso ai dati in C++ moderno Accesso ai dati in C++ moderno Correttezza, sicurezza e altre cose da nulla Nicola Gigante C++ User Group Udine Italian C++ Meetup - Pordenone - 7 febbraio 2015 Chi siamo C++ User Group Udine Nato alla

Dettagli

JDBC di base. Le classi/interfacce principali di JDBC

JDBC di base. Le classi/interfacce principali di JDBC JDBC di base Java Database Connectivity è il package Java per l accesso a database relazionali il package contiene interfacce e classi astratte completa indipendenza del codice dal tipo di database o di

Dettagli

Indice Introduzione Elementi di base dei database Il linguaggio SQL (Structured Query Language)

Indice Introduzione Elementi di base dei database Il linguaggio SQL (Structured Query Language) Indice Introduzione XI Capitolo 1 Elementi di base dei database 1 1.1 Che cos è un database 1 1.2 L architettura di Oracle Database 10g 3 Progetto 1.1 L architettura di Oracle Database 10g 8 1.3 I tipi

Dettagli

Esercitazione query in SQL L esercitazione viene effettuata sul database viaggi e vacanze che prevede il seguente modello E/R:

Esercitazione query in SQL L esercitazione viene effettuata sul database viaggi e vacanze che prevede il seguente modello E/R: Esercitazione query in SQL L esercitazione viene effettuata sul database viaggi e vacanze che prevede il seguente modello E/R: Si consiglia di creare il data base, inserire i dati nelle tabelle, provare

Dettagli

Database e reti. Piero Gallo Pasquale Sirsi

Database e reti. Piero Gallo Pasquale Sirsi Database e reti Piero Gallo Pasquale Sirsi Approcci per l interfacciamento Il nostro obiettivo è, ora, quello di individuare i possibili approcci per integrare una base di dati gestita da un in un ambiente

Dettagli

Introduzione a PHP Gestione dei Dati e della Conoscenza

Introduzione a PHP Gestione dei Dati e della Conoscenza Introduzione a PHP Gestione dei Dati e della Conoscenza Diego De Cao, Roberto Basili {decao,basili}@info.uniroma2.it a.a. 2008/2009 PHP Overview PHP (acronimo ricorsivo per "PHP: Hypertext Preprocessor")

Dettagli

Tratte da (18. TECNICHE DI ACCESSO AI DATABASE IN AMBIENTE INTERNET)

Tratte da (18. TECNICHE DI ACCESSO AI DATABASE IN AMBIENTE INTERNET) Tratte da (18. TECNICHE DI ACCESSO AI DATABASE IN AMBIENTE INTERNET) Ipotesi di partenza: concetti di base del networking Le ipotesi di partenza indispensabili per poter parlare di tecniche di accesso

Dettagli