Oracle - PL/SQL. Oracle: Prodotti
|
|
- Cosima Castellano
- 8 anni fa
- Visualizzazioni
Transcript
1 Oracle - PL/SQL Introduzione ad Oracle PL/SQL: Elementi di base Tecniche di programmazione uso delle variabili uso dei cursori uso delle funzioni/procedure I/O Oracle: Prodotti SQL*Plus - Interprete di comandi come DDL, DML. Developer/2000 and Developer. Suite di tool di sviluppo Oracle*Forms - Data entry e manipulation a schermo Oracle*Reports - Tool di gestione dei report Oracle*Graphics - Tool grafico per la sintesi dei dati (charts e grafici) Oracle*Book - Tool grafico per lo sviluppo online di documentazione ipertestuale 1
2 Oracle: Prodotti SQL*TextRetrieval and Oracle Context - Una suite di strumenti e API per la ricerca bibliografica. Programmer/ include Pro * precompilatori e librerie di procedure e programmi di utilita per il linking ``C' ', C++, FORTRAN, Java, ADA, COBOL che garantiscono l accesso agli Oracle DB Oracle: Utilities Enterprise Manager - Tool grafico di gestione di una Base Dati. SQL*Loader - Caricatore di dati esternni (ASCII o binary) in un Oracle DB. 2
3 Oracle: Connectivity e Middleware SQL*Net e Net8 - Driver di comunicazione che supporta accesso client-server dei tool ad un Oracle DB ORACLE Server - Parte di un DBMS Oracle che e attivo su un database server: riceve richieste da macchine client e le trasmette all Oracle RDBMS e viceversa. Oracle ODBC Drivers - Open DataBase Connectivity drivers per la connessione dei database Oracle in accordo con lo standard ODBC Core Database Engine ORACLE RDBMS Oracle Web Applications Server - WWW (HTTP) Server collegato all Oracle RDBMS. Spatial Data Cartridge (GIS), Video Cartridge ConText Cartridge - Provides storage and retrieval of text documents. OLAP Option - On-Line Analytical Processing Objects Option (OO features) Integrated Data Dictionary. SQL e PL/SQL 3
4 Oracle: Ambienti di sviluppo Sviluppo di applicazioni Oracle: Oracle RDBMS (o un Oracle RDBMS server), uno o piu tool di sviluppo. Tool di sviluppo esterni (PowerBuilder, Visual Basic or Java Appl Dev). Sviluppo stand-alone (Personal Oracle o Personal Oracle Lite RDBMS + Oracle Developer) Sviluppo Multi-user (in ambiente condiviso): Oracle RDBMS server su macchina server, clienti distribuiti su PCs. PL/SQL: Elementi di Base Login Host String: per Personal Oracle8 beq-local. 4
5 PL/SQL: Elementi di Base Attivazione PL/SQL:Obbiettivi Inserire, modificare, cercare ed invocare comandi SQL Accedere alle definizioni di tabelle, colonne e dati Formattare, effettuare calcoli, memorizzare e stampare i risultati di interrogazioni Accedere e copiare dati tra Oracle DB diversi 5
6 Comando CREATE CREATE TABLE impiegato (nome VARCHAR2(8), cognome VARCHAR2(8), cf VARCHAR2(9) NOT NULL, salary NUMBER(7) NOT NULL, supercf VARCHAR2(9), deptno NUMBER(1) NOT NULL) ; Domini, Tipi di Dato VARCHAR2 caratteri, taglia variabile, max=4,000 NUMBER Numerici, NUMBER(precision, scale) con NUMBER(6,2) in [ , ]. DATE data e ora, TO_DATE(), TO_CHAR(). RAW - binary data. <=255 char, 1 solo attr LARGE RAW (<= 2 Gb) per tabella LOB, BLOB e CLOB 6
7 Comando DESCRIBE SQL> CREATE TABLE imp_dip_1 AS SELECT nome, cognome FROM impiegato WHERE deptno = 1 ; Table created. SQL> DESCRIBE imp_dip_1 Name Null? Type NOME VARCHAR2(8) COGNOME VARCHAR2(2) Ouput Formattazione dell output column <nome colonna> <opz 1> opz 2> Es. column desc heading Descrizione 7
8 Formattazione FORMAT <formato> Formati A<n> fissa la ampiezza della colonna a n caratteri 99, fissa la ampiezza ed i decimali di un numero HEADING <text> Formattazione fornisce il nome <text> per l intestazione della colonna NULL <text> fornisce il default <text> per la stampa dei valori NULL 8
9 Formattazione COLUMN <nome colonna> CLEAR annulla la formattazione vigente sulla colonna <nome colonna> Report (0) CREATE TABLE Prodotto( Pid integer, Descrizione CHAR(120), Fornitore CHAR(20), Costo integer, PRIMARY KEY (PId)); 9
10 Report (1) TTitle 'Tabella dei Prodotti - Esempio di Report' BTitle 'by R. Basili' Column PId heading 'CODE' format Column Descrizione Heading 'Descrizione' format a20 word_wrapped Column Fornitore Heading 'Prodotto ' format a10 trunc Column Costo Heading 'Costo al Forn ' format Break on Column Pr_Cons Heading 'Prezzo ' format Report (2) set pagesize 20 spool Report1.sql select PID, Descrizione, Fornitore, Costo, (Costo * 2.5) as Pr_Cons from Prodotto order by Costo, PId; 10
11 Report (3) Mer Nov 08 pagina 1 Tabella dei Prodotti - Esempio di Report CODE Descrizione Prodotto Costo al Forn Prezzo Cravatta Uomo Missoni Scarpe Mocassini Valleverde Uomo 2 Scarpe Mocassini Valleverde Donna 4 Giacca Uomo Armani by R. Basili PLSQL: Struttura di un blocco [Header] [DECLARE <Costanti> <Variabili> <Cursori> <Gestori di eccezioni/errori> ] BEGIN <Istruzioni PL/SQL> [ EXCEPTIONS <Gestione eccezioni/errori> ] END / 11
12 PLSQ: Dichiarazioni DECLARE Ricavo number (38); counter number(9) := 0; ProdID De Forn Cst Prd Prodotto.PId%TYPE; Prodotto.Descrizione%TYPE; Prodotto.Fornitore%TYPE; Prodotto.Costo%TYPE; cname%rowtype; cursor cname( Thresh Prodotto.Costo%TYPE ) is select * from Prodotto where Costo >= Thresh; PLSQL: blocco BEGIN commit; open cname(2000); counter := 0; loop fetch cname into Prd; exit when cname%notfound; ProdId := Prd.PId; Cst := Prd.Costo; De := Prd.Descrizione; Ricavo := Cst * 1.25; counter := counter + 1; end loop; close cname; END; / 12
13 BEGIN loop PLSQL: Output fetch cname into Prd; exit when cname%notfound; ProdId:=Prd.PId; Cst:=Prd.Costo; De:=Prd.Descrizione; Ricavo := Cst * 1.25; DBMS_OUTPUT.PUT_LINE(' Il Prodotto: ' De ' ha un prezzo di ' to_char(ricavo) ); counter := counter + 1; end loop; close cname; DBMS_OUTPUT.PUT_LINE(' Sono stati analizzati ' to_char(counter) ' prodotti ' ); END; / Gestione dell Input PROMPT Seleziona il dipartimento ACCEPT dpn NUMBER PROMPT "Dipartimento n.:" SELECT nome, cognome, deptno FROM impiegati WHERE deptno = &dpn ; 13
14 Gestione dell Input (2) SQLprompt> Seleziona il dipartimento Dipartimento n.: 3 Nome COGNOME DEPTNO Mario ROSSI 3 Massimo BIANCHI 3... Gestione dell Input (3) PROMPT Digita Cognome ACCEPT cgnme PROMPT Cognome Impiegato: " SELECT Nome, Cognome, deptno FROM impiegati WHERE UPPER(cognome) like UPPER('%&cgnme%'); 14
15 Attivazione di un programma PL/SQL Dato un programma PL/SQL, memorizzato in un file PLSQLprog.sql, la sua attivazione e' possibile mediante il seguente comando SQLplus: SQLplusPrompt> start PLSQLprog PLSQL: Cursori Annidati cursor cname( Thresh Prodotto.Costo%TYPE ) is select * from Prodotto where Costo >= Thresh ORDER BY Costo; cursor Tutti_Prodotti is select * from Prodotto; Prd1 cname%rowtype; Prd2 Tutti_Prodotti%ROWTYPE; Cost_Diff number(10,2); 15
16 PLSQL: Cursori Annidati for Prd in cname(30000) loop Cst := Prd.Costo; (2) if Cst*1.25 > then De := Prd.Descrizione; Ricavo := Cst * 1.25; ProdId := Prd.PId; counter2 := 0; for Prd2 in Tutti_Prod loop Cost_Diff := abs(prd2.costo - Cst)/Prd2.Costo; if Cost_Diff <= 0.20 then counter2 := counter2 + 1; end if; end loop; /* su Tutti_Prod */ end if; counter := counter + 1; end loop; /* su CNAME() */ FILE init.ora utl_file = c:\database\datiutente utl_file_dir = c:\database\datiscambio File I/O - Preliminari FILE ProvaFILE.sql Outdir char(200); Outfilename char(25); Outf UTL_FILE.FILE_TYPE; Outdir := 'C:\Documenti\Didattica\BasidiDati\Esempio'; Outfilename := 'Mio.dat'; DBMS_OUTPUT.PUT_LINE ('Trying to open < Outdir '/ Outfilename ); Outf := utl_file.fopen(outdir, Outfilename,'w'); 16
17 PLSQL: File I/O Outf := utl_file.fopen(outdir, Outfilename,'w'); DBMS_OUTPUT.PUT_LINE ('File Opened!!' ); loop fetch cname into Prd; exit when cname%notfound; ProdId := Prd.PId;Cst := Prd.Costo;De := Prd.Descrizione; Ricavo := Cst * 1.25; utl_file.putf( Outf, 'Il prodotto %s ha un prezzo di %s\n', trim(de), to_char(ricavo)); utl_file.new_line(outf); counter := counter + 1; end loop; close cname; utl_file.fflush(outf); utl_file.fclose(outf); CREATE OR REPLACE TRIGGER check_eta BEFORE INSERT OR UPDATE ON impiegati FOR EACH ROW DECLARE eta NUMBER; error_msg CHAR(180); BEGIN eta := ( (sysdate - :new.nascita) / 365); Triggers IF (eta < 16) THEN error_msg := 'Attenzione: ' :new.fname ' ' :new.lname ' ha solo ' TO_CHAR(eta, '99.9') ' anni.'; RAISE_APPLICATION_ERROR ( , error_msg); END IF; END; / 17
18 Triggers (2) Compilazione OK trigger memorizzato nello schema utente Alcuni errori minori in BEGIN END msg: Trigger created with compilation errors. Errori importanti (CREATE OR REPLACE TRIGGER) trigger e respinto e non memorizzato SQL> SELECT trigger_name, trigger_body FROM user_triggers WHERE trigger_name = 'CHECK_AGE'; Funzioni o Procedure CREATE OR REPLACE PROCEDURE elimina_da_inventario ( locid_corr IN NUMBER, prodid_corr IN VARCHAR, quantita_da_eliminare IN NUMBER) AS quantita_corr NUMBER; error_msg CHAR(180); BEGIN quantita_corr := 0;... END; / 18
19 Funzioni o Procedure (1) BEGIN quantita_corr := 0; -- Cerca nella localizzazione -- SE la quantita' corrente e' non sufficiente attiva EXCEPTION -- Altrimenti aggiorna SELECT quant INTO quantita_corr FROM inventario WHERE inventario.locationid = locid_corr AND inventario.productid = prodid_corr; Funzioni o Procedure (2) -- materiale in inventario sufficiente IF (quantita_corr - quantita_da_eliminare > 0) THEN UPDATE inventario SET quant = quant - quantita_da_eliminare WHERE inventario.locationid = locid_corr AND inventario.productid = prodid_corr; END IF; 19
20 Funzioni o Procedure (3) -- materiale in inventario appena sufficente IF (quantita_corr - quantita_da_eliminare = 0) THEN DELETE FROM inventario WHERE inventario.locationid = locid_corr AND inventario.productid = prodid_corr; END IF; Funzioni o Procedure (4) -- poco materiale in inventario IF (quantita_corr - quantita_da_eliminare < 0) THEN error_msg := 'ERRORE: Quantita insufficiente!!'; RAISE_APPLICATION_ERROR (-20602, error_msg); END IF; 20
21 Funzioni o Procedure (5) EXCEPTION -- nessun materiale in inventario WHEN NO_DATA_FOUND THEN BEGIN error_msg := 'ERROR: Prodotto ' prodid_corr ' non presente!!'; RAISE_APPLICATION_ERROR (-20603, error_msg); END; -- fine eccezioni END; -- fine procedura elimina_da_inventario/3 / Invocazione EXECUTE elimina_da_inventario(106,'p500', 10) CREATE OR REPLACE FUNCTION data_nascita (impid in number) return date as nascita begin -- aggiorna nascita return nascita; end; if ( data_nascita(234)>01-gen-98 ) then 21
PL/SQL Uso di un linguaggio procedurale per un database
PL/SQL Uso di un linguaggio procedurale per un database Roberto Basili Corso di Basi Di Dati 1 a.a. 2000-2001 Abstract Questa breve dispensa descrive piu etesamente i contenuti della esercitazione del
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
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:
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
DettagliCome trattare il risultato di un comando SQL (relazioni) che
USO DI SQL DA PROGRAMMI: PROBLEMI 1 Come collegarsi alla BD Come trattare gli operatori SQL Come trattare il risultato di un comando SQL (relazioni) che Come scambiare informazioni sull esito delle operazioni.
DettagliBasi 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,
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
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
DettagliSuggerimenti 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
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
DettagliLinee guida per la programmazione di transazioni in PL/SQL
Linee guida per la programmazione di transazioni in PL/SQL Giuseppe Berio Giuseppe Berio DI - Unito 1 Esempio La transazione deve registrare l evasione di un ordine, rappresentato su più tabelle specializzate
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
DettagliSQL. Laboratorio di Progettazione di Basi di Dati (CdS in Informatica e TPS)
1 SQL Laboratorio di Progettazione di Basi di Dati (CdS in Informatica e TPS) a.a. 2014/2015 http://www.di.uniba.it/~lisi/courses/basi-dati/bd2014-15.htm Dott.ssa Francesca A. Lisi dott.ssa Francesca A.
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
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
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
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
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ù
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
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
DettagliAPPENDICE. 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
DettagliDBMS ed Applicazioni Motivazioni
DBMS ed Applicazioni Motivazioni Sin ora abbiamo visto SQL come linguaggio per interrogare DBMS da interfaccia interattiva Nella pratica, un efficace sfruttamento delle potenzialità dei DBMS deriva dalla
DettagliCapitoli 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
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),
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
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
DettagliCapitolo 7. Esercizio 7.1
Capitolo 7 Esercizio 7.1 Dato lo schema relazionale: IMPIEGATO (Nome, Salario, DipNum) DIPARTIMENTO (DipNum, NomeManager) Definire le seguenti regole attive in Oracle e DB2: 1. una regola, che quando il
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
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
DettagliStored Procedures. Massimo Mecella Dipartimento di Ingegneria informatica automatica e gestionale Antonio Ruberti Sapienza Università di Roma
Stored Procedures Massimo Mecella Dipartimento di Ingegneria informatica automatica e gestionale Antonio Ruberti Sapienza Università di Roma Progetto di Applicazioni Software Stored Procedure e User Defined
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
DettagliChe 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
DettagliCorso di Informatica Modulo T3 B2 - Database in rete
Corso di Informatica Modulo T3 B2 - Database in rete 1 Prerequisiti Programmazione web Applicazione web Modello OSI Architettura client/server Conoscenze generali sui database Tecnologia ADO in Visual
DettagliSoluzione DDL ed Algebra Relazionale
Soluzione DDL ed Algebra Relazionale Banca del Tempo a Istruzioni DDL (realizzate con Toad Data Modeler -- CREATE TABLES SECTION ------------------------------------------------- -- Table Zona CREATE TABLE
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
DettagliBasi di dati (6) Docente: Andrea Bulgarelli. Università di Modena e Reggio Emilia. andrea.bulgarelli@gmail.com Argomento: T-SQL (1.
Università di Modena e Reggio Emilia Basi di dati (6) Docente: andrea.bulgarelli@gmail.com Argomento: T-SQL (1.0) 1 Panoramica T-SQL Variabili Controllo di flusso Trattamento errori Print Operatori e funzioni
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
DettagliDominio applicativo. Progettazione. v SQL incluso in codice applicativo v Embedded SQL v Cursori v Dynamic SQL v JDBC v Stored procedures
Dominio applicativo (Capitolo 6) v SQL incluso in codice applicativo v Embedded SQL v Cursori v Dynamic SQL v JDBC v Stored procedures Basi di dati 1 Docente Claudia Amari 1 Progettazione PROGETTAZIONE
DettagliSQL. Alcune note sulla definizione dei dati
SQL Alcune note sulla definizione dei dati Domini Domini elementari (predefiniti) Domini definiti dall'utente (riutilizzabili, possono servire per specificare vincoli di dominio propri di una certa applicazione)
DettagliGestione Orario Lezioni: Schema del Database
Gestione Orario Lezioni: Schema del Database corsi corso studenti studente anno anno docente orario id corso giorno ora1 docenti docente dipartimento email ora2 aula aule aula capienza 1 Gestione Orario
DettagliJDBC versione base. Le classi/interfacce principali di JDBC
JDBC versione base Java Database Connectivity è il package Java per l accesso a database relazionali il package contiene interfacce e classi astratte uno dei pregi è la completa indipendenza del codice
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
DettagliStored Procedures. Antonella Poggi, Claudio Corona. Dipartimento di informatica e Sistemistica SAPIENZA Università di Roma
Stored Procedures Antonella Poggi, Claudio Corona Dipartimento di informatica e Sistemistica SAPIENZA Università di Roma Progetto di Applicazioni Software Anno accademico 2008-2009 Questi lucidi sono stati
DettagliCorso 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:
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,
DettagliFunzioni scalari in SQL. Capitolo 5. coalesce. nullif. Altre funzioni scalari. case
Funzioni scalari in SQL Capitolo 5 Costrutti definiti in SQL-2 che estendono la sintassi delle espressioni nella target list coalesce nullif case Prof. Stefano Paraboschi Vengono valutate per ogni riga
DettagliRDBMS: panorama attuale. RDBMS: panorama attuale
RDBMS: panorama attuale Gestiscono e manipolano dati semplici (tabellari) Hanno un linguaggio di interrogazione (SQL) semplice, dichiarativo e standard Tool consolidati per lo sviluppo di applicazioni
DettagliPROGRAMMA CORSO Analista Programmatore JAVA - ORACLE
PROGRAMMA CORSO Analista Programmatore JAVA - ORACLE 1. JAVA 1.1 Introduzione a Java Introduzione Cosa è Java 1.2 Sintassi e programmazione strutturata variabili e metodi tipi di dati, array operatori
DettagliLaboratorio di PL/SQL
Laboratorio di PL/SQL Prof. Alessandra Lumini Alma Mater Studiorum - Università di Bologna Per la sintassi PL/SQL: ORACLE 11g Rel. 2 PL/SQL Language Reference 1 Schema DB 2 1 Procedure: definizione e call
DettagliSQL e ACCESS. Modello relazionale PROBLEMA ENTITA STUDENTE
SQL e ACCESS Prof. Salvatore Multazzu (salvatoremultazzu@tiscali.it) Applicazioni Informatiche nella comunicazione Modello relazionale Entità Record o Ennuple Attributi o Campi Tipi Chiavi Primarie (PK)
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
DettagliEsame di Stato Istituto Tecnico Industriale Soluzione della Seconda Prova Indirizzo: INFORMATICA Tema: INFORMATICA Anno Scolastico: 2002-2003
Esame di Stato Istituto Tecnico Industriale Soluzione della Seconda Prova Indirizzo: INFORMATICA Tema: INFORMATICA Anno Scolastico: 2002-2003 Il primo punto richiede l analisi e lo sviluppo del progetto
DettagliIntroduzione ai Sistemi di Gestione di Basi di Dati XML
Introduzione ai Sistemi di Gestione di Basi di Dati Introduzione ai Sistemi di Gestione di Basi di Dati Obiettivi Memorizzare ed estrarre documenti da RDBMS. Trasformare dati tabellari in dati e viceversa.
DettagliMetodi per la Gestione dei Dati (lezioni di laboratorio)
Università degli Studi di Modena e Reggio Emilia Facoltà di Scienze della Comunicazione e dell Economia Corso di Laurea in Comunicazione e Marketing Anno Accademico 2005/06 Metodi per la Gestione dei Dati
DettagliSistema di Gestione di Basi di Dati DataBase Management System DBMS
Base di dati (accezione generica) collezione di dati, utilizzati per rappresentare le informazioni di interesse per una o più applicazioni di una organizzazione (accezione specifica) collezione di dati
DettagliBasi di Dati: Corso di laboratorio
Basi di Dati: Corso di laboratorio Lezione 9 Raffaella Gentilini 1 / 41 Sommario 1 DBMS Attivi e Triggers 2 2 / 41 DBMS Attivi DBMS Attivi I DBMS tradizionale sono passivi: Eseguono delle operazioni solo
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
DettagliDBMS ED APPLICAZIONI (CAPITOLO 6) SQL incluso in codice applicativo Embedded SQL Cursori Dynamic SQL JDBC Stored procedures
1 DBMS ED APPLICAZIONI (CAPITOLO 6) SQL incluso in codice applicativo Embedded SQL Cursori Dynamic SQL JDBC Stored procedures Progettazione 2 Dominio Applicativo PROGETTAZIONE CONCETTUALE PROGETTAZIONE
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
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)
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
DettagliSQL nei linguaggi di programmazione
SQL nei linguaggi di programmazione Atzeni, Ceri, Paraboschi, Torlone Basi Di Dati Modelli e Linguaggi di Interrogazione, McGraw-Hill Italia, Capitolo 6 SQL in Linguaggi di Programmazione L uso diretto
DettagliVincoli, procedure e regole attive in SQL. SQL: vincoli, trigger 1
Vincoli, procedure e regole attive in SQL SQL: vincoli, trigger 1 Qualità dei dati Qualità dei dati: correttezza, completezza, attualità In molte applicazioni reali i dati sono di scarsa qualità (5% -
DettagliJDBC 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
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
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,
DettagliJDBC: Introduzione. Java Database Connectivity (JDBC): parte 1. Schema dei legami tra le classi principali. Principali classi/interfacce di JDBC
JDBC: Introduzione Java Database Connectivity (JDBC): parte 1 Gianluca Moro DEIS - Università di Bologna gmoro@deis.unibo.it Java Database Connectivity è il package Java per l accesso a database relazionali
DettagliDati relazionali e XML
Dati relazionali e Introduzione (1) Memorizzazione dei dati Utilizzo dei dati Applicazione DBMS relazionale Applicazione Applicazione 2 Introduzione (2) Memorizzazione dei dati Utilizzo dei dati Applicazione
DettagliCorso di Basi di Dati. Linguaggi per basi di dati. Linguaggi per basi di dati. Linguaggi per basi di dati: Algebra Relazionale
Corso di Basi di Dati Linguaggi per basi di dati: lgebra Relazionale Donatella Gubiani Linguaggi per basi di dati Si possono distinguere diversi tipi di linguaggi per la gestione dei dati: Linguaggio di
DettagliData Base in Internet
Data Base in Internet Esempio di applicazione ASP Prof. Claudio Maccherani Un applicazione che interroghi un database remoto in un server Web è scritta in ASP (Active Server Page) se piattaforma NT / IIS
DettagliIndice 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
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
DettagliAPPLICAZIONI DELLE BASI DI DATI
APPLICAZIONI DELLE BASI DI DATI APPLICAZIONI TRADIZIONALI APPLICAZIONI INTERNET SQL EMBEDDED SQL nel codice applicativo! I comandi SQL possono essere chiamati dall interno di un programma in un linguaggio
DettagliDBMS: MySQL CORSO DI BASI DI DATI 2014/2015
DBMS: MySQL CORSO DI BASI DI DATI 2014/2015 MySQL La pronuncia ufficiale è MY- S- Q- L ma si può leggere anche MY- Sequel. MySQL è il secondo RDBMS più diffuso al mondo. OpenSource sono licenza GPL Scelto
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
DettagliOracle9i. Sono le dieci di sera, state impazzendo sul database. Indietro nel tempo con. Flashback Query
Nella versione 9i del database più diffuso al mondo sono state aggiunte molte nuove funzionalità, una di queste consente di visualizzare i dati com erano in un determinato istante del passato Indietro
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
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:
DettagliSQL (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
Dettaglia.a. 2012/13 12 Novembre 2012 Preparazione al Test in itinere, Compito A 1. Modellare tramite uno schema entità- relazione la seguente base di dati:
Gestione dei dati e della conoscenza, a.a. 2012/13 12 Novembre 2012 Preparazione al Test in itinere, Compito A 1. Modellare tramite uno schema entità- relazione la seguente base di dati: Si vuole modellare
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
DettagliSQL (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
DettagliEsercitazione sulle libpq - libreria C per PostgreSQL
Esercitazione sulle libpq - libreria C per PostgreSQL Roberto Tronci roberto.tronci@diee.unica.it Basi di Dati A.A. 2007/2008 Tronci ( roberto.tronci@diee.unica.it ) Esercitazione libpq Basi di Dati 2007/2008
DettagliTool. 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
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
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
DettagliIl software e la programmazione
Il software e la programmazione Concetti base sul software Elementi di programmazione Cenni sul linguaggio Pascal Che cosa è il software Determina ciò che un computer può fare Include istruzioni memorizzate
DettagliMySQL Command Line Client: operazioni fondamentali
MySQL Command Line Client: operazioni fondamentali INTRODUZIONE Il RDBMS MySQL, oltre a fornire un applicazione che abbia un interfaccia user-friendly, ha a disposizione anche un altro client, che svolge
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
DettagliIstruzioni DML di SQL
Istruzioni DML di SQL Pag. 99 par.4 1 Sintassi: Costrutto: INSERT INTO (Inserimento di dati in tabelle) INSERT INTO [(, ,, )] VALUES (, ,
DettagliAspetti relazionali ad oggetti di Oracle 9i. Il sistema di tipi di Oracle. Tipi oggetto
Aspetti relazionali ad oggetti di Oracle 9i 158 Il sistema di tipi di Oracle Non distinct type Tipi oggetto Tipi riferimento Tipi collezione Ereditarietà 159 Tipi oggetto Possibilità di definire tipi oggetto
DettagliMDAC. Attualmente la versione disponibile di MDAC è la 2.8 ma faremo riferimento alla 2.6. ADO Active Data Objects ADO OLE DB ODBC
MDAC MDAC è l acronimo di Microsoft Data Access Component e fa parte della tecnologia Microsoft denominata Universal Data Access (UDA). Mette a disposizione una serie di componenti per l accesso a svariate
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
DettagliNella relazione CINEMA, Nome è chiave secondaria. Nella relazione FILM, CodRegista, e CodProtagonista sono chiavi esterne sulla tabella PERSONE.
Si consideri il seguente schema relazionale, relaivo ad una base di dati per gestire la programmazione cinematografica giornaliera in un certo insieme di cinema: CINEMA(CodC, Nome, Indirizzo, Tel, NSale)
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
DettagliArchivi e Basi di Dati
Archivi e Basi di Dati A B C File Programma 1 Programma 2 A B C File modificati Programma 1 DBMS DB Programma 2 Informatica Generale (CdL in E&C), A.A. 2000-2001 55 Problemi nella gestione di archivi separati
DettagliPL/SQL e PLpgSQL. Audiolezione 28b. Necessità. Soluzioni. Embedded SQL. Alfio Ferrara - Stefano Montanelli. Estensioni procedurali di SQL
Audiolezione 28b Corso di Basi di Dati e Laboratorio PL/SQL e PLpgSQL Alfio Ferrara - Stefano Montanelli A.A. 2005/2006 Basi di Dati e Laboratorio 1 Estensioni procedurali di SQL Necessità Disporre di
DettagliIntroduzione 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
DettagliBasi di Dati Esercitazione JDBC. Giugno 2007
Basi di Dati Esercitazione JDBC Giugno 2007 Esercizi Considerando il seguente schema: Fornitori (CodiceFornitore, Nome, Indirizzo, Citta) Prodotti (CodiceProdotto, Tipo, Marca, Modello) Catalogo (CodiceFornitore,
Dettagli