Ultima versione: 11g R2
|
|
- Ambrogio Speranza
- 8 anni fa
- Visualizzazioni
Transcript
1 UNIVERSITA DI BOLOGNA ORACLE DATABASE Oracle è uno tra i più famosi database management system (DBMS). Ultima versione: 11g R2 SQL Developer -> strumento di gestione Ezio Tomassetti - ORACLE DATABASE 1
2 LICENZE E PIATTAFORME SUPPORTATE Licenze 'Enterprise Edition' (EE) 'Standard Edition' (SE) 'Standard Edition One' 'Express Edition' ('Oracle Database XE') Piattaforme Apple Mac OS X Server: PowerPC HP HP-UX: PA-RISC, Itanium HP Tru64 UNIX: Alpha HP OpenVMS: Alpha, Itanium IBM AIX5L: IBM POWER IBM z/os: zseries Linux: x86, x86-64, PowerPC, zseries, Itanium Microsoft Windows: x86, x86-64, Itanium Sun Solaris: SPARC, x86, x86-64 Ezio Tomassetti - ORACLE DATABASE 2
3 STRUTTURA DEL DATABASE Set di processi di un istanza: PMON (monitor dei processi) SMON (monitor di sistema) DBWR (scrive nei datafile) LGWR (scrive nei logfile) CKPT (scrive i checkpoint controllandone la consistenza) ARCH (archiviatore dei log delle transazioni per il DB in modalità archive log mode) Ezio Tomassetti - ORACLE DATABASE 3
4 ARCHITETTURA CLIENT-SERVER L architettura di Oracle si basa sul classico paradigma di comunicazione client-server, in cui sono presenti uno o più processi client che richiedono un servizio, e, un processo server che eroga tale servizio. Lato client sono quindi disponibili per gli utilizzatori finali del database le funzionalità di controllo, formulazione richieste via SQL, immissione ed elaborazione dati, e, visualizzazione dei risultati; di contro, lato server, troviamo la logica della base di dati e il data processing vero e proprio Ezio Tomassetti - ORACLE DATABASE 4
5 DIMENSIONE MAX DATABASE BIGFILE TABLESPACE maximum datafile size = db_block_size* maximum number of blocks. maximum datafile size =2 32 *32/1024/1024 G= G. maximum database size = maximum datafile size*maximum datafile maximum database size =131072*65533 G= G. Il massimo numero di indici per tabella è infinito Ezio Tomassetti - ORACLE DATABASE 5
6 DATATYPE Datatype VARCHAR2(size) NVARCHAR2(size) CHAR(size) NCHAR(size) NUMBER(p,s) BINARY_INTEGER LONG DATE TIMESTAMP (fractional_seconds_precisio n) TIMESTAMP (fractional_seconds_precisio n) WITH {LOCAL} TIMEZONE Description Questo tipo alfanumerico è a lunghezza variabile e può memorizzare fino a 4000 caratteri. Come VARCHAR2 ma con set di caratteri UNICODE o comunque NATIONAL CHARACTER SET. Rappresenta sequenze alfanumeriche (lettere e numeri) Dati Unicode di tipo carattere a lunghezza fissa contenenti n caratteri. Consente la memorizzazione di valori numerici interi, positivi e negativi, dei numeri a virgola fissa e di quelli a virgola mobile signed integers (older slower version of PLS_INTEGER) Character data of variable length (A bigger version the VARCHAR2 datatype) È usato per memorizzare date e orari. Questo tipo di dato è un'estensione del tipo DATE che permette di specificare la precisione della frazione di secondo memorizzata. Questo tipo di dato è un'estensione del TIMESTAMP che permette di memorizzare la differenza di time zone, cioè la differenza tra l ora locale e la UTC INTERVAL YEAR TO MONTH Rappresenta un periodo di tempo come anni e mesi INTERVAL DAY TO SECOND Usato per rappresentare periodo di tempo come giorno, ora, minuti e secondi. RAW(size) E' un tipo di dato a dimensione variabile, usato per memorizzare dati non-strutturati, senza avere conversione in caratteri. XMLType XML data Ezio Tomassetti - ORACLE DATABASE 6
7 CUSTOM DATATYPE E possibile definire Tipi di oggetti personalizzati: CREATE OR REPLACE TYPE <type_name> AUTHID <CURRENT USER DEFINER> AS OBJECT ( <attribute> <attribute data_type>); CREATE OR REPLACE TYPE phone_t AS OBJECT ( a_code CHAR(3), p_number CHAR(8)); INSERT INTO phone (per_id, per_phone) VALUES (2, phone_t('212', ' ')); Ezio Tomassetti - ORACLE DATABASE 7
8 SUPPORTO LARGE OBJECT Memorizza dati string nel database nel formato character set CLOB Character Large Object Dati stringa memorizzati nel formato National Character Set NCLOB National Character Large Object Memorizzano tipi di dati in formato binario. BLOB Binary Large Object Un file binario archiviato al di fuori della base di dati nel sistema host di file del sistema operativo, ma accessibile da tabelle. BFILE pointer to binary file on disk Ezio Tomassetti - ORACLE DATABASE 8
9 DATI SPAZIALI E GEOMETRICI Oracle Spatial è progettato per rendere la gestione dei dati spaziali più semplice e più naturale per gli utenti di applicazioni location-enabled e sistemi di informazione geografica (GIS). Geometry Types Una geometria è una sequenza ordinata di vertici che sono collegati da segmenti di linea retta o archi di cerchio. La semantica della geometria è determinata dal suo tipo. Spatial supporta diversi tipi primitivi, e le geometrie sono composte da collezioni di questi tipi, tra cui i bidimensionali: Points Line strings n-point polygons Arc line strings (All arcs are generated as circular arcs.) Arc polygons Compound polygons Compound line strings Circles Optimized rectangles Ezio Tomassetti - ORACLE DATABASE 9
10 UNIVERSITA DI BOLOGNA ORACLE DATABASE DATI SPAZIALI E GEOMETRICI MBR ENCLOSING INDICIZZAZIONE Ezio Tomassetti - ORACLE DATABASE 10
11 CONTROLLO DI TIPO SUI CAMPI I constraint (o vincoli), sono delle regole che vengono stabilite all'interno di una tabella Oracle che servono ad evitare che l'utente possa inserire dati non conformi ad alcune regole. Queste regole possono preservare l'inserimento dei dati o l'integrità referenziale tra le tabelle. NOT NULL CHECK UNIQUE PRIMARY KEY FOREIGN KEY La colonna non può essere NULL Per controllare il valore (>,..) Unicità dei valori Controlla che la chiave sia unica Fa un controllo sulle chiavi esterne Ezio Tomassetti - ORACLE DATABASE 11
12 TRIGGER Le dimensioni del trigger non può superare i 32 KB. Un trigger semplice può essere eseguito esattamente in uno dei punti seguenti: Prima della dichiarazione attivazione Dopo la dichiarazione attivazione Prima di ogni riga che interessa la dichiarazione di attivazione Dopo ogni riga che interessa la dichiarazione di attivazione Per creare un trigger si usa CREATE TRIGGER. CREATE TRIGGER nome_trigger modo evento [OR evento] ON tabella [REFERENCING referenza] [FOR EACH ROW] [WHEN (predicato SQL)] blocco PL/SQL; STORED PROCEDURE CREATE OR REPLACE TRIGGER Print_salary_changes BEFORE DELETE OR INSERT OR UPDATE ON emp FOR EACH ROW WHEN (NEW.EMPNO > 0) DECLARE sal_diff number; BEGIN sal_diff := :NEW.SAL - :OLD.SAL; dbms_output.put('old salary: ' :OLD.sal); dbms_output.put(' New salary: ' :NEW.sal); dbms_output.put_line(' Difference ' sal_diff); END; Il linguaggio usato per codificare stored procedure è un estensione procedurale database-specific di SQL. CREATE [ OR REPLACE ] PROCEDURE [ schema. ]procedure [ (argument [ IN OUT IN OUT ] [ NOCOPY ] datatype ) ] [ invoker_rights_clause ] { IS AS } { pl/sql_subprogram_body call_spec } ; Ezio Tomassetti - ORACLE DATABASE 12
13 SEQUENZE Le sequenze di Oracle sono dei generatori automatici di numeri che permettono di assegnare, in automatico, i valori nelle colonne numeriche PRIMARY KEY. Sintassi di CREATE SEQUENCE CREATE SEQUENCE <schema>.<nome sequenza> START WITH <n> INCREMENT BY <n> MINVALUE <n> MAXVALUE <n> [CYCLE NOCYCLE]; Ezio Tomassetti - ORACLE DATABASE 13
14 CURSORI La dichiarazione di un cursore specifica un insieme di tuple (come risultato di una query) in modo che le tuple possano essere processate individualmente, una alla volta, usando l istruzione fetch. La dichiarazione di un cursore ha la sintassi: cursor <nome cursore> [(<lista parametri>)] is <istruzione select>; declare cursor emp_cur is select * from EMP; emp_rec EMP%ROWTYPE; emp_sal EMP.SAL%TYPE; begin open emp_cur; loop fetch emp_cur into emp_rec; exit when emp_cur%notfound; emp_sal := emp_rec.sal; <sequenza di istruzioni> end loop; close emp_cur; end; Ezio Tomassetti - ORACLE DATABASE 14
15 VISTE Una vista, (o view), è un oggetto logico che consente di avere una rappresentazione dei dati "personalizzata" dagli utenti. CREARE UNA VISTA CREATE VIEW my_view AS SELECT nominativo, data_assunz, paese_residenza FROM impiegati; CANCELLARE UNA VISTA DROP VIEW [ schema. ] view [ CASCADE CONSTRAINTS ] ; Ezio Tomassetti - ORACLE DATABASE 15
16 VISTE DI SISTEMA v$archive_dest: mostra tutti i redo log archiviati v$archive_dest_status: mostra gli errori che si sono verificati v$archived_log: visualizza i redo log che non sono più necessari v$archive_processes: mostra le informazioni sui processi archiviati v$controlfile: mostra la posizione e lo stato di ogni controlfile v$bh: mostra le informazioni su ogni blocco nel database (lo stato) v$database: mostra le informazioni di accesso nel database v$datafile: mostra le informazioni di ogni datafile v$lock: mostra le informazioni relative ai lock Ezio Tomassetti - ORACLE DATABASE 16
17 ACCESS CONTROL Oracle supporta il controllo degli accessi tramite: Roles: forniscono un mezzo di assegnamento dei permessi organizzata per utenti. Quindi non è indispensabile dare ad ogni utente i permessi Views: meccanismo per controllare l accesso ai dati. Possono limitare l accesso a colonne o righe specificate. Virtual Private Databases: pone politiche di sicurezza a righe e a colonne. Label security: permette di assegnare etichette di sicurezza su righe di dati e controllarne l accesso basandosi su queste etichette Ezio Tomassetti - ORACLE DATABASE 17
18 AUTENTICAZIONE Autenticazione da database Fondamentalmente consiste nella ricerca, da parte di Oracle, dell'utente e password forniti durante la fase di login all'interno di un'apposita tabella del dizionario dei dati e ne verifica la corrispondenza dei dati. Sintassi semplificata di CREATE USER CREATE USER <nome utente> IDENTIFIED BY <password>; Concedere all'utente il permesso di collegarsi al database GRANT CREATE SESSION TO <utente>; Rimuovere un privilegio REVOKE <privilegio> ON <schema>.<oggetto> FROM <utente>; Ezio Tomassetti - ORACLE DATABASE 18
19 ALTER TABLE A volte può essere utile modificare una tabella già esistente. ALTER TABLE <schema>.<tabella> ADD <colonna> <datatype>; Possiamo anche modificare la struttura di una tabella appartenente ad un altro utente: è innanzitutto obbligatorio possedere il corretto privilegio (privilegio ALTER), quindi dobbiamo specificare lo schema di appartenenza della tabella. ALTER TABLE impiegati ADD Indirizzo VARCHAR2(30); MODIFY SET UNUSED COLUMN Ezio Tomassetti - ORACLE DATABASE 19
20 CLUSTERING In oracle vi sono tre tipologie di cluster: Index Cluster, il default. Viene usato un indice per gestire i dati del cluster Hash Cluster. Viene usata una funzione hash sui campi comuni del cluster per accedere ai dati del cluster. Sorted Hash Cluster. Viene usata una funzione hash sui campi comuni del cluster per accedere ai dati del cluster ed ogni lista corrispondente ad una chiave hash contiene i record ordinati. ESEMPIO INDEX CLUSTER CREATE CLUSTER TEST_CLUSTER (commoncolumn number(10)) SIZE 1024 TABLESPACE users; CREATE TABLE ORDINI_TEST ( ORD_ID NUMBER(10), DESCRIZIONE VARCHAR2(100)) CLUSTER TEST_CLUSTER(ORD_ID); CREATE INDEX TEST_CLUSTER_INDEX ON CLUSTER TEST_CLUSTER Ezio Tomassetti - ORACLE DATABASE 20
21 REPLICAZIONE MASTER-SLAVE Utilizziamo Oracle Stream DBMS_STREAMS_ADM.MAINTAIN_SCHEMAS( schema_names => 'scott', source_database => 'prod', destination_database => 'test', capture_name => 'capture_scott', capture_queue_table => 'rep_capture_queue_table', capture_queue_name => 'rep_capture_queue', capture_queue_user => null, apply_name => 'apply_scott', apply_queue_table => 'rep_dest_queue_table', apply_queue_name => 'rep_dest_queue', apply_queue_user => null, propagation_name => 'prop_scott', log_file => 'exp_scott.log', bi_directional => false, include_ddl => true, instantiation => dbms_streams_adm.instantiation_schema, perform_actions => false, script_name => 'schema_replication.sql', script_directory_object => 'script_dir' ); END; schema_names: il nome dello schema source_database: il database sorgente destination_database: il database di destinazione capture_name: nome del processo di cattura bi_directional: se impostato a 'false' indica che la propagazione delle informazioni è monodirezionale dal db di produzione a quello di test include_dll: impostato a 'true' indica che sia le istruzioni DDL sia quelle DML vanno replicate dal db sorgente a quello di destinazione script_name: impostato con la stringa 'schema_replication.sql'. Questo script verrà creato nella directory Oracle 'script_dir' (/home/oracle/script_dir) e conterrà tutti i passaggi per istanziare lo schema di replica script_directory_object: la directory Oracle in cui memorizzare lo script 'schema_replication.sql' Ezio Tomassetti - ORACLE DATABASE 21
22 HOT BACKUP È un backup effettuato mentre il programma che usa il file da copiare è attivo. Se si prevede di eseguire un backup a caldo, è necessario utilizzare il database in modalità ARCHIVELOG. Il segmento di rollback deve essere sufficientemente grande per accogliere le modifiche apportate durante il backup a caldo. Strumento di Backup Oracle RMAN -> RECOVERY MANAGER RMAN>BACKUP DATABASE FORMAT '/usr/backup/full_%u PLUS ARCHIVELOG ALL FORMAT '/usr/backup/arch_%u DELETE INPUT; Ezio Tomassetti - ORACLE DATABASE 22
23 FUNZIONI EXPLAIN/ANALYZE La vista di USER_INDEXES contiene le informazioni statistiche che vengono inserite ogni volta che il comando ANALYZE INDEX viene eseguito: analyze index NOME_INDICE compute statistics; La vista USER_INDEXES viene usata dall'ottimizzatore Oracle, tramite il metodo CBO(Cost Based Optimizer), per fornire le informazioni necessarie a determinare il percorso ottimale di esecuzione del comando SQL d'interesse. IMPORTANTE LA VISTA INDEX_STATS EXPLAIN PLAN è il comando utilizzato da ORACLE per visualizzare il piano di esecuzione prescelto dall ottimizzatore. EXPLAIN PLAN FOR select * from LINEITEM, PART where p_name >'qqq' and p_partkey=l_partkey Plan Table Ezio Tomassetti - ORACLE DATABASE 23
24 LOCK Il lock può avere diverse granularità ovvero diversi gradi di precisione, può essere su un singolo record, su una intera tabella o su un database e può avere diversi gradi di visibilità (lettura, scrittura, lettura e scrittura). Sintassi: LOCK TABLE tabella IN lockmode MODE [NOWAIT] lockmode puo essere uno dei seguenti: ROW SHARE: permette l accesso a piu entita sulla tabella, ma inibisce gli utenti dal fare a loro volta un lock per averne l accesso esclusivo ROW EXCLUSIVE: come il ROW SHARE, ma impedisce anche i lock in modo SHARE; SHARE UPDATE: sinonimo di ROW SHARE. SHARE: permette le interrogazioni contemporanee ma non le modifiche sulla tabella. EXCLUSIVE: permette solo le query sulla tabella e inibisce qualunque altra attivita sulla tabella. SHARE ROW EXCLUSIVE: permette le interrogazioni ma proibisce agli utenti le modifiche e il lock in modo SHARE. PARAMETRO OPZIONALE: NOWAIT: se specificato, Oracle restituisce immediatamente il controllo all utente nel caso in cui la tabella abbia un lock di un altro utente; se omesso, Oracle aspetta finche la tabella non e di nuovo disponibile e, poi, restituisce il controllo all utente. Ezio Tomassetti - ORACLE DATABASE 24
25 BENCHMARK I benchmark sono stati effettuati su: SO: Windows 7 CPU: Intel I7 2.0Ghz RAM: 6GB EMP7 Q.tà di dati analizzata Tempo di elaborazione: 00:00: TCP-B 00:00: Ezio Tomassetti - ORACLE DATABASE 25
26 DATA WAREHOUSE Applicazioni per DATA WAREHOUSE Oracle Database 11g Oracle Exadata Database Machine Oracle Exadata Storage Server Oracle Partitioning Oracle Advanced Compression Oracle OLAP Oracle Retail Data Model Oracle Financial Services Data Warehouse Oracle Data Mining Oracle Data Integrator Enterprise Edition Oracle Business Intelligence Caso: Oracle Data Mining (ODM) Per scelte di business intelligence. Ezio Tomassetti - ORACLE DATABASE 26
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,
DettagliOracle PL/SQL. Motivazioni
Oracle PLSQL Motivazioni Supponiamo che nella gestione del database Azienda ci venga chiesto di apportare le modifiche necessarie a far sì che ad ogni impiegato possa essere assegnato, alla fine di ogni
DettagliDDL, 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
DettagliDBMS (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
DettagliDefinizione 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
DettagliGestione delle tabelle
Linguaggio SQL: fondamenti Creazione di una tabella Modifica della struttura di una tabella Cancellazione di una tabella Dizionario dei dati Integrità dei dati 2 Creazione di una tabella (1/3) Si utilizza
DettagliBasi di dati SQL. Standardizzazione di SQL. Linguaggi di Interrogazione: SQL. Prof.Angela Bonifati
Basi di dati Linguaggi di Interrogazione: SQL Prof.Angela Bonifati 1 SQL Il nome stava per Structured Query Language Più che un semplice linguaggio di query: si compone di una parte DDL e di una DML DDL:
DettagliLaboratorio 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
DettagliDomini elementari, 2. Basi di dati. Domini elementari, 4. Domini elementari, 3. Domini definiti dagli utenti. Domini elementari, 5
Domini elementari, Basi di dati Linguaggi di Interrogazione: SQL Prof.Angela Bonifati Bit Valori booleani (vero/falso), singoli o in sequenza (la sequenza può essere di lunghezza variabile) Sintassi: bit
DettagliInsegnamento di Informatica CdS Scienze Giuridiche A.A. 2006/7. Il trattamento dei dati
Insegnamento di Informatica CdS Scienze Giuridiche A.A. 2006/7 Il trattamento dei dati database: il linguaggio SQL seconda parte Prof. Valle D.ssa Folgieri Lez9 15.11.06 Trattamento dati. Database: il
DettagliCorso 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
DettagliIl 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ù
DettagliLinguaggio SQL: fondamenti D B M G. Gestione delle tabelle
Linguaggio SQL: fondamenti Creazione di una tabella Modifica della struttura di una tabella Cancellazione di una tabella Dizionario dei dati Integrità dei dati 2 2007 Politecnico di Torino 1 Creazione
DettagliLezione 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
DettagliRiccardo Dutto, Paolo Garza Politecnico di Torino. Riccardo Dutto, Paolo Garza Politecnico di Torino
Integration Services Project SQL Server 2005 Integration Services Permette di gestire tutti i processi di ETL Basato sui progetti di Business Intelligence di tipo Integration services Project SQL Server
DettagliIl 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
DettagliSQL - 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
DettagliSQL non è solo un linguaggio di interrogazione (Query Language), ma. Un linguaggio per la definizione di basi di dati (Data-definition language (DDL))
SQL PER LA DEFINIZIONE DI BASI DI DATI 1 SQL non è solo un linguaggio di interrogazione (Query Language), ma Un linguaggio per la definizione di basi di dati (Data-definition language (DDL)) CREATE SCHEMA
DettagliBasi 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
DettagliSQL Server 2005. Introduzione all uso di SQL Server e utilizzo delle opzioni Olap. Dutto Riccardo - SQL Server 2005.
SQL Server 2005 Introduzione all uso di SQL Server e utilizzo delle opzioni Olap SQL Server 2005 SQL Server Management Studio Gestione dei server OLAP e OLTP Gestione Utenti Creazione e gestione DB SQL
DettagliSQL Server. SQL server e un RDBMS di tipo client/server che utilizza Transact-SQL per gestire la comunicazione fra un client e SQL Server
SQL Server 7.0 1 SQL Server SQL server e un RDBMS di tipo client/server che utilizza Transact-SQL per gestire la comunicazione fra un client e SQL Server 2 Strumenti per la gestione Enterprise Manager
DettagliSQL: 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,
DettagliPL/SQL PL/SQL. Ordine degli elementi dei triggers di Oracle. Differenze nei triggers. Versione dei trigger e PSM di Oracle
Versione dei trigger e PSM di Oracle Lucidi derivati da quelli di Jeffrey D Ullman Oracle usa una variante di SQL/PSM che si chiama non consente solo di creare e memorizzare procedure e funzioni, ma puo
DettagliSQL PER LA DEFINIZIONE DI BASI DI DATI
SQL PER LA DEFINIZIONE DI BASI DI DATI SQL non è solo un linguaggio di interrogazione (Query Language), ma Un linguaggio per la definizione di basi di dati (Data-definition language (DDL)) CREATE SCHEMA
DettagliBasi 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
DettagliGERARCHIE RICORSIVE - SQL SERVER 2008
GERARCHIE RICORSIVE - SQL SERVER 2008 DISPENSE http://dbgroup.unimo.it/sia/gerarchiericorsive/ L obiettivo è quello di realizzare la tabella di navigazione tramite una query ricorsiva utilizzando SQL SERVER
DettagliEsercitazione 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
DettagliSQL SQL. Definizione dei dati. Domini. Esistono 6 domini elementari:
SQL SQL (pronunciato anche come l inglese sequel: acronimo di Structured Query Language (linguaggio di interrogazione strutturato Linguaggio completo che presenta anche proprietà di: DDL (Data Definition
DettagliGiovanna Rosone 04/03/2010. 04/03/2010 SQL, Istruzioni per la modifica dello schema
Giovanna Rosone 04/03/2010 04/03/2010 SQL, Istruzioni per la modifica dello schema 1 Riepilogo Impiegato Pagamenti Nome colonna PAG_COD PAG_MATR Tipo dati CHAR(6) CHAR(6) Nome colonna Tipo dati PAG_STIPENDIO
DettagliIl linguaggio SQL: trigger. Versione elettronica: 04.7.SQL.trigger.pdf
Il linguaggio SQL: trigger Sistemi Informativi T Versione elettronica: 04.7.SQL.trigger.pdf DBMS attivi Un DBMS si dice attivoquando dispone di un sottosistema integrato per definire e gestire regole I
DettagliAl 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,
DettagliIl linguaggio SQL: DDL di base
Il linguaggio SQL: DDL di base Sistemi Informativi T Versione elettronica: 04.1.SQL.DDLbase.pdf SQL: caratteristiche generali SQL (Structured Query Language) èil linguaggio standard de facto per DBMS relazionali,
DettagliIntroduzione 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
DettagliOrganizzazione degli archivi
COSA E UN DATA-BASE (DB)? è l insieme di dati relativo ad un sistema informativo COSA CARATTERIZZA UN DB? la struttura dei dati le relazioni fra i dati I REQUISITI DI UN DB SONO: la ridondanza minima i
DettagliIl linguaggio SQL. è di fatto lo standard tra i linguaggi per la gestione di data base relazionali.
(Structured Query Language) : Il linguaggio è di fatto lo standard tra i linguaggi per la gestione di data base relazionali. prima versione IBM alla fine degli anni '70 per un prototipo di ricerca (System
DettagliEsercitazione 1. Sistemi Informativi T. Versione elettronica: L01.2.DDLDMLbase.pdf
Esercitazione 1 SQL: DDL e DML di base Sistemi Informativi T Versione elettronica: L01.2.DDLDMLbase.pdf Prime cose da fare Fare login sul PC usando lo username di Facoltà Procedura descritta qui: http://ccib.ing.unibo.it/content/account
DettagliSQL Server 2005. Integration Services. SQL Server 2005: ETL - 1. Integration Services Project
atabase and ata Mi ni ng Group of P ol itecnico di Torino atabase and ata Mi ni ng Group of P ol itecnico di Torino atabase and data mining group, SQL Server 2005 Integration Services SQL Server 2005:
DettagliBasi di Dati. S Q L Lezione 5
Basi di Dati S Q L Lezione 5 Antonio Virdis a.virdis@iet.unipi.it Sommario Gestione eventi Gestione dei privilegi Query Complesse 2 Esercizio 9 (lezione 4) Indicare nome e cognome, spesa e reddito annuali
DettagliPROGRAMMA 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
DettagliData Base. Master "Bio Info" Reti e Basi di Dati Lezione 6
Data Base 1 Sommario I concetti fondamentali. Database Relazionale.. Query e SQL MySql, Creazione di un db in MySQL con PHPmyAdmin Creazione database e delle Tabelle Query Inserimento Ricerca Modifica
DettagliLaboratorio 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
DettagliLezione V. Aula Multimediale - sabato 29/03/2008
Lezione V Aula Multimediale - sabato 29/03/2008 LAB utilizzo di MS Access Definire gli archivi utilizzando le regole di derivazione e descrivere le caratteristiche di ciascun archivio ASSOCIAZIONE (1:1)
DettagliVincoli 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
DettagliMySQL Database Management System
MySQL Database Management System http://www.mysql.com/ DATABASE RELAZIONALI Un database è una collezione strutturata di informazioni. I database sono delle strutture nelle quali è possibile memorizzare
DettagliMac Application Manager 1.3 (SOLO PER TIGER)
Mac Application Manager 1.3 (SOLO PER TIGER) MacApplicationManager ha lo scopo di raccogliere in maniera centralizzata le informazioni piu salienti dei nostri Mac in rete e di associare a ciascun Mac i
DettagliBasi di Dati prof. Letizia Tanca
Basi di Dati prof. Letizia Tanca (lucidi tratti dal libro Atzeni-Ceri-Paraboschi-Torlone) AA 2003-04 Linguaggi di interrogazione commerciali per il Modello Relazionale dei Dati: SQL - il DDL Domini I domini
DettagliSQL Sintassi Dei Comandi
SQL Sintassi Dei Comandi Di Roberto Aloi http://prof3ta.homeunix.org prof3ta@email.it Questo fascicolo è stato realizzato esclusivamente a fini divulgativi e per la libera consultazione. E' concessa la
DettagliCostruzione di Sit Web con PHP e MySQL. Lezione 7 - Esercitazione - Introduzione a MySQL: le tabelle, i tpi di dato, le query
Costruzione di Sit Web con PHP e MySQL Lezione 7 - Esercitazione - Introduzione a MySQL: le tabelle, i tpi di dato, le query Esercitazione In questa lezione si farà insieme una seconda esercitazione che
DettagliInformatica per le discipline umanistiche 2 lezione 10
Informatica per le discipline umanistiche 2 lezione 10 Parte III: il computer come strumento per l interazione e la comunicazione Si è parlato di identità Parte III: il computer come strumento per l interazione
DettagliIL LINGUAGGIO SQL IDENTIFICATORI E TIPI DI DATI COMANDI E ISTRUZIONI
IL LINGUAGGIO SQL Il linguaggio SQL ( Structured Query Languages) è un linguaggio non procedurale che è diventato uno standard tra i linguaggi per la gestione dei database relazionali. Il linguaggio procedurale
DettagliBasi di Dati e Sistemi Informativi. Structured Query Language
Basi di Dati e Sistemi Informativi Structured Query Language Corso di Laurea in Ing. Informatica Ing. Gestionale Magistrale SQL come DDL e DML SQL non è solo un linguaggio di interrogazione Linguaggio
DettagliVolumi di riferimento
Simulazione seconda prova Esame di Stato Gestione di un centro agroalimentare all ingrosso Parte prima) Un nuovo centro agroalimentare all'ingrosso intende realizzare una base di dati per l'attività di
DettagliAppunti di MySql. Evoluzione di un tutorial di base di mysql, scritto da Etel Sverdlov.
Appunti di MySql Evoluzione di un tutorial di base di mysql, scritto da Etel Sverdlov. Indice generale avviare la shell mysql...2 comandi SQL per la gestione del database (DDL)...2 visualizzare l'elenco
DettagliIl 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
DettagliIndice 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
DettagliHBase Data Model. in più : le colonne sono raccolte in gruppi di colonne detti Column Family; Cosa cambia dunque?
NOSQL Data Model HBase si ispira a BigTable di Google e perciò rientra nella categoria dei column store; tuttavia da un punto di vista logico i dati sono ancora organizzati in forma di tabelle, in cui
DettagliI file di dati. Unità didattica D1 1
I file di dati Unità didattica D1 1 1) I file sequenziali Utili per la memorizzazione di informazioni testuali Si tratta di strutture organizzate per righe e non per record Non sono adatte per grandi quantità
DettagliTriggers. Basi dati attive. Trigger. Indipendenza della conoscenza
Basi dati attive Triggers Antonella Poggi Domenico Lembo Dipartimento di informatica e Sistemistica SAPIENZA Università di Roma Progetto di Applicazioni Software Anno accademico 2009-2010 Una base di dati
DettagliDispensa di database Access
Dispensa di database Access Indice: Database come tabelle; fogli di lavoro e tabelle...2 Database con più tabelle; relazioni tra tabelle...2 Motore di database, complessità di un database; concetto di
DettagliIndice. 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
DettagliNozione ed uso. Operazioni eseguite automaticamente ogni volta che avviene un certo evento Uso:
Nozione ed uso Operazioni eseguite automaticamente ogni volta che avviene un certo evento Uso: Gestione di vincoli di integrità: Per fallimento Per modifica Auditing: Sicurezza Statistiche Valori derivati
Dettagli2104 volume III Programmazione
2103 SQLite Capitolo 77 77.1 Utilizzo generale................................. 2104 77.1.1 Utilizzo di sqlite3».......................... 2104 77.1.2 Copie di sicurezza............................ 2106
DettagliSistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. D. Talia - UNICAL. Sistemi Operativi 9.1
IMPLEMENTAZIONE DEL FILE SYSTEM 9.1 Implementazione del File System Struttura del File System Implementazione Implementazione delle Directory Metodi di Allocazione Gestione dello spazio libero Efficienza
DettagliINFORMATICA. 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
DettagliProcedure memorizzate SQL-2003/PSM. Forma base di PSM. Parametri in PSM
Procedure memorizzate SQL-2003/PSM Procedure memorizzate nel database Programmazione general-purpose Leggere sezione 8.2 di Garcia-Molina et al. Lucidi derivati da quelli di Jeffrey D. Ullman 1 Una estensione
DettagliDBMS ORACLE 9i I componenti del Database Server Oracle : Strutture di memoria Processi File fisici Directory principali: c:\oracle\admin\\pfile c:\oracle\ora92\database
DettagliDUE 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
DettagliInformatica Generale Andrea Corradini. 19 - Sistemi di Gestione delle Basi di Dati
Informatica Generale Andrea Corradini 19 - Sistemi di Gestione delle Basi di Dati Sommario Concetti base di Basi di Dati Il modello relazionale Relazioni e operazioni su relazioni Il linguaggio SQL Integrità
DettagliForm Editor. Dove NomeProfilo è personalizzabile.
Form Editor Il tema permette di generare automaticamente dei moduli per la raccolta di dati in tre semplici step: 1. Si crea una tabella nel database per la raccolta dei dati. Per la creazione si parte
DettagliLA REALIZZAZIONE DI APPLICAZIONI ALCUNE ARCHITETTURE
LA REALIZZAZIONE DI APPLICAZIONI ALCUNE ARCHITETTURE Quattro parti: Gestione dati Client-Server Logica + interfaccia Logica + interfaccia Business rules Sistema di comunicazione Logica applicativa DBMS:
DettagliLezione 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
DettagliROUTINE 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
DettagliAzioni. Select e join non consentono di modificare il contenuto del DB. Inserzione di nuovi dati. Azioni desiderate. Aggiornamento di dati
Azioni Select e join non consentono di modificare il contenuto del DB Azioni desiderate Inserzione di nuovi dati Aggiornamento di dati Cancellazione di dati Aggiunta di un record insert into utenti(nome,tel,codice_u)
DettagliSistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. Implementazione del File System. Struttura del File System. Implementazione
IMPLEMENTAZIONE DEL FILE SYSTEM 9.1 Implementazione del File System Struttura del File System Implementazione Implementazione delle Directory Metodi di Allocazione Gestione dello spazio libero Efficienza
DettagliLA REALIZZAZIONE DI APPLICAZIONI. Quattro parti: Gestione dati. Business rules. Logica applicativa. Interfaccia utente. Molte possibili architetture
LA REALIZZAZIONE DI APPLICAZIONI Quattro parti: Gestione dati Business rules Logica applicativa Interfaccia utente Molte possibili architetture L approccio tradizionale: uso di un linguaggio PLSQL 1.1
DettagliCorso sul linguaggio SQL
Corso sul linguaggio SQL Modulo L2B (SQL) 2.2 Comandi sulle tabelle 1 Prerequisiti Introduzione ai DB Tabelle, relazioni e attributi Chiave primaria Chiave esterna Vincoli di integrità 2 1 Introduzione
DettagliCorso di Access. Prerequisiti. Modulo L2A (Access) 1.1 Concetti di base. Utilizzo elementare del computer Concetti fondamentali di basi di dati
Corso di Access Modulo L2A (Access) 1.1 Concetti di base 1 Prerequisiti Utilizzo elementare del computer Concetti fondamentali di basi di dati 2 1 Introduzione Un ambiente DBMS è un applicazione che consente
DettagliSistemi Informativi e Basi di Dati
Sistemi Informativi e Basi di Dati Laurea Specialistica in Tecnologie di Analisi degli Impatti Ecotossicologici Docente: Francesco Geri Dipartimento di Scienze Ambientali G. Sarfatti Via P.A. Mattioli
DettagliPMF Integration Tools
PMF Integration Tools Strumenti di integrazione di PMF con l infrastruttura del cliente Architettura e modalità di interazione Cliente - documentazione - Redatto da Francesco Buratto Redatto il 01/10/2012
DettagliUser 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
DettagliBasi di Dati. Laboratorio Ing. G. Laboccetta Dott.ssa. V. Policicchio. Corso di Laurea in Informatica. a.a. 2010-2011
Corso di Laurea in Informatica Basi di Dati a.a. 2010-2011 Laboratorio Ing. G. Laboccetta Dott.ssa. V. Policicchio PROGETTAZIONE FISICA SQL-DDL OBIETTIVO: Rappresentare i dati della realtà di interesse
DettagliSQL. Storia e standard
SQL Lorenzo Sarti 2009 Basi di Dati 1 Storia e standard Lorenzo Sarti 2009 Basi di Dati 2 SQL-2 È ricco e complesso e nessun sistema commerciale lo implementa in maniera completa Sono definiti 3 livelli
DettagliI 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----------------------------------------------------------------------------
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
DettagliAccess. P a r t e p r i m a
Access P a r t e p r i m a 1 Esempio di gestione di database con MS Access 2 Cosa è Access? Access e un DBMS che permette di progettare e utilizzare DB relazionali Un DB Access e basato sui concetti di
DettagliIntroduzione. Dicom in Oracle 11g: gestione e vantaggi
Introduzione Dicom in Oracle 11g: gestione e vantaggi Agenda Lo scenario del sistema sanitario moderno Cosa è DICOM? Gestione in Oracle dei dati DICOM Vantaggi Lo scenario Per molti anni utilizzo di carta
DettagliDB2 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
DettagliBasi di dati e sistemi informativi I
Basi di dati e sistemi informativi I mod. laboratorio Alessandro De Luca Università degli Studi di Napoli Federico II Lezione, 11 marzo 2015 Soluzione 1, creazione CREATE TABLE Impiegato ( Cod NUMBER(4),
DettagliIntroduzione a Oracle 9i
Introduzione a Oracle 9i Ing. Vincenzo Moscato - Overview sull architettura del DBMS Oracle 9i L architettura di Oracle 9i si basa sul classico paradigma di comunicazione client-server, in cui sono presenti
DettagliSQL -DDL. FONDISTA(Nome, Nazione, Età) GAREGGIA(NomeFondista, NomeGara, Piazzamento) GARA(Nome, Luogo, Nazione, Lunghezza)
26/03/2013 SQL SQL -DDL Esercizio 4.3 Dare le definizioni SQL delle tre tabelle FONDISTA(Nome, Nazione, Età) GAREGGIA(NomeFondista, NomeGara, Piazzamento) GARA(Nome, Luogo, Nazione, Lunghezza) rappresentando
DettagliArchitettura di storage
Architettura di storage Architettura di storage 27/11/08 /home/scotty/enrico/corso web/finale/architettura/arch1.odp page 1 Architettura di storage Cluster Databases Tabelle Indici Blocchi 27/11/08 /home/scotty/enrico/corso
DettagliCapitolo 1 Oracle: la società e il software 1 1.1 Terminologia 1 1.2 Oracle Corporation: la storia 2 1.3 L offerta corrente 12 1.
Indice INTRODUZIONE XI Capitolo 1 Oracle: la società e il software 1 1.1 Terminologia 1 1.2 Oracle Corporation: la storia 2 1.3 L offerta corrente 12 1.4 Domande 13 Capitolo 2 I servizi Oracle 15 2.1 Terminologia
DettagliFile system II. Sistemi Operativi Lez. 20
File system II Sistemi Operativi Lez. 20 Gestione spazi su disco Esiste un trade-off,tra spreco dello spazio e velocità di trasferimento in base alla dimensione del blocco fisico Gestione spazio su disco
DettagliPreparazione. Introduzione a MySQL: costruzione di una base di dati e gestione degli accessi. Accesso all area condivisa. Avvio Server MySQL
Introduzione a MySQL: costruzione di una base di dati e gestione degli accessi Stefania Marrara Elisa Quintarelli Lezione 1 2 ore a.a 2004/05 Preparazione Accesso all area condivisa Start -> Programs ->MySQL
DettagliSQL Server. Applicazioni principali
SQL Server Introduzione all uso di SQL Server e utilizzo delle opzioni OLAP Applicazioni principali SQL Server Enterprise Manager Gestione generale di SQL Server Gestione utenti Creazione e gestione dei
DettagliL architettura di un DBMS
L architettura di un DBMS sources: Lucidi del corso di Lucidi del corso di Laboratorio di Basi di dati e sistemi informativi, Montesi, Magnani, Corso di laurea in Informatica per il management, Scienze
DettagliINDICI. Prevediamo di effettuare spesso interrogazioni simili alle seguenti:
Date le tabelle: Clienti := < id, nome, cognome, indirizzo,città > Ordini := < id, data_ora_ordine, id_prodotto, id_cliente, quantità> Prodotti := < id, nome, descrizione, costo,scorte > INDICI Prevediamo
DettagliLA GESTIONE DELLE VISITE CLIENTI VIA WEB
LA GESTIONE DELLE VISITE CLIENTI VIA WEB L applicazione realizzata ha lo scopo di consentire agli agenti l inserimento via web dei dati relativi alle visite effettuate alla clientela. I requisiti informatici
DettagliCosa è un foglio elettronico
Cosa è un foglio elettronico Versione informatica del foglio contabile Strumento per l elaborazione di numeri (ma non solo...) I valori inseriti possono essere modificati, analizzati, elaborati, ripetuti
DettagliCorso 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