SQL per la modifica di basi di dati. 29/01/2014SQL per la modifica di basi di dati2 Data Manipulation Language Introduciamo ora il Data Manipulation Language.

Slides:



Advertisements
Presentazioni simili
TIPI STANDARD DI SQL BOOLEAN Valori: vero, falso CHAR(n)
Advertisements

DBMS (DataBase Management System)
Stored Procedure Function Trigger
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità C1 Il linguaggio SQL.
Structured Query Language (SQL) Presentazione 13.1 Informatica Generale (Prof. Luca A. Ludovico)
1 Comandi per la manipolazione dei dati. 2 Tipi di comandi INSERT UPDATE DELETE COMANDI COMANDI 2.
Sistemi per il recupero delle informazioni
DML – Data Manipulation Language
Esercitazioni del Corso di Sistemi Informativi Marina Mongiello
Esercitazioni del Corso di Sistemi Informativi Marina Mongiello
SQL Structured Query Language
19/01/2014 Viste. 19/01/2014 Viste Le Viste Logiche o Viste o View possono essere definite come delle tabelle virtuali, i cui dati sono riaggregazioni.
Elementi di PL/SQL.
1 IT FOR BUSINESS AND FINANCE ACCESS INTRODUCTION.
Corso di Informatica (Basi di Dati)
1 Corso di Laurea in Biotecnologie Informatica (Basi di Dati) SQL: Data Manipulation Language (DML) Anno Accademico 2009/2010 Da: Atzeni, Ceri, Paraboschi,
Maurizio Lenzerini Domenico Lembo Laurea in Ingegneria Informatica - Università di Roma "La Sapienza" Corso di Basi di Dati - A.A. 2003/2004 Prima Esercitazione.
Access: Query semplici
Basi di dati Università Degli Studi Parthenope di Napoli
SQL: Lezione 7 Nataliya Rassadko
SQL Per la modifica di basi di dati
SQL Per la definizione di basi di dati SQL per definire ed amministrare Ogni utente puo definire una base di dati di cui diventa lamministratore potendo.
SQL1 Modifica dei dati inserimento cancellazione modifica.
Vincoli di integrità generici Con i costrutti visti sinora, non è sempre possibile definire tutti i possibili vincoli di integrità. Per questo esiste listruzione.
Manipolazione dei dati I comandi SQL che permettono di modificare il contenuto di una base di dati sono insertdeleteupdate insert ha la seguente sintassi:
SELECT STATEMENT Clausola WHERE permette di limitare il numero di record da estrarre SELECT */ [DISTINCT] colonna/ espressione [alias],… FROM table [WHERE.
Viste. Cosè una vista? è possibile creare un subset logico di dati o una combinazione di dati una vista è una tabella logica basata su una tabella o su.
SQL basato su ANSI (American National Standards Institute) – standard SQL SQL – Structured Query Language è un linguaggio dichiarativo e permette di comunicare.
DBMS ( Database Management System)
Basi di dati Claudia Raibulet
SQL: Structured Query Language
Corso di INFORMATICA anno scolastico 2009/10 Linguaggio SQL IDENTIFICATORI di tabelle e attributi: stringhe di lunghezza max 18 caratteri, composte da.
Basi di Dati Microsoft Office: Access OpenOffice: Base Informatica 1 (SAM) - a.a. 2010/11.
Progettare un database
Corso di Basi di Dati Il Linguaggio SQL Home page del corso:
sql: esempi di linguaggio sql nell'implementazione mysql
Basi di Dati e Sistemi Informativi Il Linguaggio SQL Home page del corso:
SQL.
BIOINFO3 - Lezione 51 INSERIMENTO DEI DATI Visto come si creano le tabelle (sinora tristemente vuote), cominciamo ad occuparci di come riempirle con dei.
DATABASE Introduzione
DB- Sistemi Informativi
Basi di Dati Esercitazione Algebra Relazionale 21 Ottobre 2013 Disheng Qiu
Basi di Dati Esercitazione SQL 17 Novembre Esercitazione Basi di Dati2 Fornitori (CodiceFornitore, Nome, Indirizzo, Città) Prodotti (CodiceProdotto,
SQL (IV) Data Definition Language/ Data Manipulation Language.
Pagine ASP parte 3 I data base Stefano Schacherl.
Il Linguaggio SQL. Le interrogazioni in SQL (continua…) La parte di SQL dedicata alla formulazione di interrogazioni fa parte del DML. SQL esprime le.
SQL, esempi 30/10/2014Basi di dati SQL1. 30/10/2014Basi di dati SQL2 CREATE TABLE, esempi CREATE TABLE corsi( codice numeric NOT NULL PRIMARY KEY, titolo.
Interazione col DB Per interagire con una base dati da una pagina PHP occorre procedere come segue: Eseguire la connessione al DBMS MySQL in ascolto;
1 Basi di Dati S tructured Q uery L anguage Appunti Matteo Longhi.
SQL (III) Data Definition Language/ Data Manipulation Language.
MySQL Database Management System
Database Elaborato da: Claudio Ciavarella & Marco Salvati.
Nozione ed uso Operazioni eseguite automaticamente ogni volta che avviene un certo evento Uso: –Gestione di vincoli di integrità: Per fallimento Per modifica.
Elementi di PL/SQL. Pl/Sql Il PL/SQL (Procedural Language/Structured Query Language) è un linguaggio di programmazione procedurale di Oracle che costituisce.
Vincoli Interrelazionali Per i vincoli visti l’inserimento di un valore che li viola viene semplicemente impedito. In caso di vincoli di integrità referenziale,
Vincoli interrelazionali
Lezione 6 - SQL. Linguaggi per DB Per interagire con le basi di dati occorre un linguaggio Linguaggio SQL (Structured Query Language), linguaggio standardizzato.
© 2015 Giorgio Porcu - Aggiornamennto 28/03/2015 UdA 1A Database Progettazione Fisica G IORGIO P ORCU
Corso integrato di Matematica, Informatica e Statistica Informatica di base Linea 1 Daniela Besozzi Dipartimento di Informatica e Comunicazione Università.
Lezione 5 - SQL. Linguaggi per DB Per interagire con le basi di dati occorre un linguaggio Linguaggio SQL (Structured Query Language), linguaggio standardizzato.
Basi di Dati e Sistemi Informativi Esercitazione: Il Linguaggio SQL (DDL+DML) Home page del corso:
Linguaggio SQL prima parte Linguaggio SQL prima parte A. Lorenzi, E. Cavalli INFORMATICA PER SISTEMI INFORMATIVI AZIENDALI Copyright © Istituto Italiano.
Normalizzazione. Introduzione Nell’organizzazione tradizionale degli archivi, si verificano alcuni problemi, quali: Ridondanza dei dati (gli stessi dati.
SQL Linguaggio per l’interrogazione di una base dati.
Elementi di statistica con R e i database LEZIONE 2 Rocco De Marco rocco.demarco(a)an.ismar.cnr.it Ancona, 12 Aprile 2012.
Linguaggio SQL. Linguaggi per database La diffusione del modello relazionale ha favorito l’uso prevalente di linguaggi non procedurali: in questo modo.
Il linguaggio SQL (Structured Query Language) è il linguaggio standard per creare, manipolare e interrogare database relazionali. SQL non è case-sensitive:
Esercizi SQL Group by. CREATE TABLE dipendente (codDip CHAR(8) NOT NULL UNIQUE PRIMARY KEY, cognome CHAR(60) NOT NULL, nome CHAR(60) NOT NULL, stipendio.
Lezione 4 – Linguaggi ed Interazione. Linguaggi La comunicazione è essenziale tra gli esseri umani Se vogliamo chiedere informazioni stradali ad un passante.
SQL per la modifica di basi di dati
Transcript della presentazione:

SQL per la modifica di basi di dati

29/01/2014SQL per la modifica di basi di dati2 Data Manipulation Language Introduciamo ora il Data Manipulation Language (DML) ossia il linguaggio SQL che serve per inserire, modificare e cancellare i dati del database, ma anche per interrogare il database, ossia estrarre i dati dal database. Inizialmente descriveremo le istruzioni che servono a inserire, cancellare e modificare i dati. In seguito introdurremo le istruzioni per estrarre dal database le informazioni che ci interessano.

29/01/2014SQL per la modifica di basi di dati3 SQL per modificare basi di dati I dati possono essere modificati mediante tre istruzioni: Insert Delete Update

29/01/2014SQL per la modifica di basi di dati4 Insert semplice Supponiamo di volere inserire un nuovo dato in una tabella. Tale operazione si realizza mediante listruzione INSERT INTO… VALUES Sintassi: INSERT INTO nome tabella [(ListaAttributi)] VALUES (ListaDiValori) | SQLSelect

29/01/2014SQL per la modifica di basi di dati5 Regole per linserimento caratteri e date I dati char, varchar, vanno inseriti tra apici Una data deve essere inserita fra apici e deve essere espressa nel formato di default di ORACLE. Questa edizione di Oracle accetta il formato di data italiano ossia giorno, mese, anno (dd-mon-aaaa), inframezzati da / o da -, dove il mese va espresso con le sue prime tre lettere (gen,feb,…) e lanno per intero. Esempio: 15/giu/2004, 21-gen-2007

29/01/2014SQL per la modifica di basi di dati6 Insert, Esempio 1 INSERT INTO Esami (Corso, Matricola, Voto) VALUES (DB1, , 27) CorsoInsegnanteMatricolaVoto Supponiamo di avere definito la tabella: CorsoInsegnanteMatricolaVoto DB1NULL Ai valori non attribuiti viene assegnato NULL, a meno che non sia specificato un diverso valore di default. Linserimento fallisce se NULL non è permesso per gli attributi mancanti. Esami

29/01/2014SQL per la modifica di basi di dati7 Insert, Esempio 2 INSERT INTO Esami VALUES (DB2, Verdi, , 30) CorsoInsegnanteMatricolaVoto DB1NULL DB2Verdi Non specificare gli attributi equivale a specificare tutte le colonne della tabella. NB: Si deve rispettare lordine degli attributi

29/01/2014SQL per la modifica di basi di dati8 Esercizio 1 Inserire nella tabella categorie i seguenti elementi Cat_codCat_descrizione L10Libreria M10Mobile M20Armadio S10Sedia T10Tavolo

29/01/2014SQL per la modifica di basi di dati9 Esercizio 1, soluzione Insert into categorie Values (L10, Libreria) Insert into Categorie Values(M10, Mobile) Insert into Categorie Values(M20, Armadio) Insert into Categorie Values(S10, Sedia) Insert into Categorie Values(T10, Tavolo)

29/01/2014SQL per la modifica di basi di dati10 Esercizio 2 Inserire nella tabella Componenti i valori Com_cod = 0010 Com_descrizione = Montante laterale 100 cm Com_costo = Lab_cod = 0010

29/01/2014SQL per la modifica di basi di dati11 Esercizio 2… Problemi? Il DBMS si rifiuta di inserire questo dato? Perché secondo voi? La colonna lab_cod di Componenti fa riferimento alla Colonna lab_cod della tabella Laboratori, i cui elementi non sono ancora stati inseriti. In particolare, il valore 0010 non è ancora presente nella colonna lab_cod della tabella Laboratori, quindi il DBMS non sa a cosa si riferisce il valore 0010 che si cerca di inserire nella colonna lab_cod della tabella Componenti. Occorre prima inserire i valori nella tabella Laboratori!

29/01/2014SQL per la modifica di basi di dati12 Esercizio 3 Inserire nella tabella Articoli la riga contenente i valori Art_cod=L100 Cat_cod=L10 Art_descrizione=Libreria 100 cm x 120 cm Art_prezzo= Art_IVA=20 Art_Spese_trasporto=48.00 Continuare con linserimento dei dati nel foglio di esercizi

29/01/2014SQL per la modifica di basi di dati13 Esercizio 4 Inserire i valori della tabella Laboratori, come figurano nel foglio di esercitazione. Quindi inserire i valori di Componenti!

29/01/2014SQL per la modifica di basi di dati14 Insert mediante SELECT E possibile effettuare un insert prendendo i dati da unaltra tabella. Questo è possibile mediante il comando di interrogazione del database SELECT, che vedremo nelle prossime lezioni. Parleremo in seguito di questo tipo di inserimento di dati. Con questo tipo di insert si possono effettuare tanti inserimenti simultaneamente. Esempio: Tabella: Indirizzi_Studenti( Indirizzo, Telefono, ) INSERT INTO Indirizzi_Studenti (Indirizzo, Telefono) SELECT Indirizzo, Telefono FROM Studenti

29/01/2014SQL per la modifica di basi di dati15 Delete Cancellazione di righe da tabelle Sintassi: DELETE FROM nome_tabella [WHERE Condizione] Per eliminare un elemento bisogna individuare quale. Questo si può stabilire mediante la clausola WHERE, dove viene stabilita una condizione che individua lelemento (o gli elementi) da cancellare. Spesso un particolare elemento può essere individuato mediante il suo valore nella chiave primaria.

29/01/2014SQL per la modifica di basi di dati16 Delete, esempio Cancellare dalla tabella Esami i dati relativi allo studente il cui numero di matricola è DELETE FROM Esami WHERE Matricola = Operazione non reversibile Se la condizione è omessa questa istruzione cancella lintero contenuto della tabella (!!! Attenzione quindi !!!) Lo schema invece non viene modificato. Listruzione DELETE FROM Esami Restituisce la tabella Esami con listanza vuota

29/01/2014SQL per la modifica di basi di dati17 Esercizio Cancellare dalla tabella Categorie la riga la cui descrizione è Sedia Delete from Categorie Where cat_descrizione=Sedia

29/01/2014SQL per la modifica di basi di dati18 Delete La condizione del delete può essere una normale condizione di SELECT (vedremo dopo) Questa modalità di delete permette di cancellare più righe con ununica istruzione, purchè le righe soddisfino la condizione. Esempio: Eliminare tutte le righe della tabella esami in cui il numero di matricola non si trova nella tabella Studenti DELETE FROM Esami WHERE Matricola NOT IN (SELECT Matricola FROM Studenti)

29/01/2014SQL per la modifica di basi di dati19 Update Inoltre è possibile aggiornare alcuni dati seguendo la seguente sintassi: UPDATE Tabella SET Attributo = Espr WHERE Condizione

29/01/2014SQL per la modifica di basi di dati20 Update, esempi Esempio: Dalla tabella Aule modificare il numero dellaula da 3 a 7. UPDATE Aule SET Aula = 7 WHERE Aula = 3 Esempio: modificare il valore del reddito delle persone più giovani di 30 anni attribuendo loro un aumento del 10%. UPDATE Persone SET Reddito = Reddito * 1.1 WHERE Eta < 30