Il linguaggio SQL: le basi

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Il linguaggio SQL: le basi"

Transcript

1 Il linguggio SQL: le si Sistemi Informtivi L-A Home Pge del corso: Versione elettronic: SQL-si.pdf Sistemi Informtivi L-A SQL: crtteristiche generli SQL (Structured Query Lnguge) è il linguggio stndrd de fcto per DBMS relzionli, che riunisce in sé funzionlità di DDL, DML e DCL SQL è un linguggio dichirtivo (non-procedurle), ovvero non specific l sequenz di operzioni d compiere per ottenere il risultto SQL è relzionlmente completo, nel senso che ogni espressione dell lger relzionle può essere trdott in SQL inoltre SQL f molte ltre cose Il modello dei dti di SQL è sto su telle nziché relzioni: Possono essere presenti righe (tuple) duplicte In lcuni csi l ordine delle colonne (ttriuti) h rilevnz il motivo è prgmtico (ossi legto considerzioni sull efficienz) SQL dott l logic 3 vlori introdott con l Alger Relzionle SQL - Bsi Sistemi Informtivi L-A 1

2 SQL: stndrd e diletti Il processo di stndrdizzzione di SQL è inizito nel 1986 Nel 199 è stto definito lo stndrd SQL- (o SQL-9) d prte dell ISO (Interntionl Stndrds Orgniztion), e dell ANSI (Americn Ntionl Stndrds Institute), rispettivmente descritti nei documenti ISO/IEC 9075:199 e ANSI X (identici!) Del 1999 è lo stndrd SQL:1999, che rende SQL un linguggio computzionlmente completo (e quindi con istruzioni di controllo!) per il supporto di oggetti persistenti Allo stto ttule ogni sistem h ncor un suo diletto: support (in lrg prte) SQL- h già elementi di SQL:1999 h nche costrutti non stndrd Quello che vedimo è l prte più diffus SQL - Bsi Sistemi Informtivi L-A 3 Orgnizzzione del mterile L trttzione di SQL viene suddivis in più prti come segue: DDL di se e DML per gli opertori dell lger e per le operzioni di modific dei dti Per fre quello che si f nche in lger DML per il rggruppmento dei dti Per derivre informzioni di sintesi di dti DML con locchi innestti Per scrivere richieste complesse DDL per l definizione di viste e vincoli generici Per migliorre l qulità dei dti Utilizzo di SQL d linguggio ospite Per scrivere ppliczioni SQL - Bsi Sistemi Informtivi L-A 4

3 Dt Definition Lnguge (DDL) Il DDL di SQL permette di definire schemi di relzioni (o tle, telle), modificrli ed eliminrli Permette di inoltre di specificre vincoli, si livello di tupl (o rig ) che livello di tell Permette di definire nuovi domini, oltre quelli predefiniti Per vincoli e domini si può nche fre uso del DML (quindi inizilmente non si trttno completmente) Inoltre si possono definire viste ( view ), ovvero telle virtuli, e indici, per ccedere efficientemente i dti (questi ultimi li vedremo in SI L-B) Per qunto non trttto nel seguito si fcci riferimento l mterile di lortorio SQL - Bsi Sistemi Informtivi L-A 5 Crezione ed eliminzione di telle Medinte l istruzione CREATE TABLE si definisce lo schem di un tell e se ne cre un istnz vuot Per ogni ttriuto v specificto il dominio, un eventule vlore di defult e eventuli vincoli Infine possono essere espressi ltri vincoli livello di tell Medinte l istruzione DROP TABLE è possiile eliminre lo schem di un tell (e conseguentemente l corrispondente istnz) DROP TABLE Imp SQL - Bsi Sistemi Informtivi L-A 6 3

4 Definizione di telle: esempio CREATE TABLE Imp ( CodImp chr(4) PRIMARY KEY, CF chr(16) NOT NULL UNIQUE, -- chive Cognome vrchr(60) NOT NULL, Nome vrchr(30) NOT NULL, Sede chr(3) REFERENCES Sedi(Sede), -- FK Ruolo chr(0) DEFAULT Progrmmtore, Stipendio int CHECK (Stipendio > 0), UNIQUE (Cognome, Nome) -- chive ) CREATE TABLE Prog ( CodProg chr(3), Citt vrchr(40), PRIMARY KEY (CodProg,Citt) ) SQL - Bsi Sistemi Informtivi L-A 7 Vlori nulli e vlori di defult Per vietre l presenz di vlori nulli, è sufficiente imporre il vincolo NOT NULL CF chr(16) NOT NULL, Per ogni ttriuto è inoltre possiile specificre un vlore di defult, che verrà usto se ll tto dell inserimento di un tupl non viene fornito esplicitmente un vlore per l ttriuto reltivo Ruolo chr(0) DEFAULT Progrmmtore SQL - Bsi Sistemi Informtivi L-A 8 4

5 Chivi L definizione di un chive vviene esprimendo un vincolo UNIQUE, che si può specificre in line, se l chive consiste di un singolo ttriuto CF chr(16) UNIQUE, o dopo ver dichirto tutti gli ttriuti, se l chive consiste di uno o più ttriuti: UNIQUE(Cognome,Nome) Ovvimente, specificre sree molto più restrittivo UNIQUE(Cognome), UNIQUE(Nome) SQL - Bsi Sistemi Informtivi L-A 9 Chivi primrie L definizione dell chive primri di un tell vviene specificndo un vincolo PRIMARY KEY, o in line o come vincolo di tell CodImp chr(4) PRIMARY KEY PRIMARY KEY (CodProg,Citt) V osservto che: L specific di un chive primri non è oligtori Si può specificre l mssimo un chive primri per tell Non è necessrio specificre NOT NULL per gli ttriuti dell primry key In DB è necessrio specificre il vincolo NOT NULL si per definire chivi si per definire chivi primrie! SQL - Bsi Sistemi Informtivi L-A 10 5

6 Chivi strniere ( foreign key ) L definizione di un foreign key vviene specificndo un vincolo FOREIGN KEY, e indicndo qule chive viene referenzit Sede chr(3) REFERENCES Sedi(Sede) Ovvero FOREIGN KEY (Sede) REFERENCES Sedi(Sede) Nell esempio, Imp è dett tell di riferimento e Sedi tell di destinzione (nlog terminologi per gli ttriuti coinvolti) Le colonne di destinzione devono essere un chive dell tell destinzione (non necessrimente l chive primri) Se si omettono gli ttriuti destinzione, vengono ssunti quelli dell chive primri Sede chr(3) REFERENCES Sedi SQL - Bsi Sistemi Informtivi L-A 11 Vincoli generici ( check constrint ) Medinte l clusol CHECK è possiile esprimere vincoli di tupl ritrri, sfruttndo tutto il potere espressivo di SQL L sintssi è: CHECK (<condizione>) Il vincolo è violto se esiste lmeno un tupl che rende fls l <condizione>. Pertnto Stipendio int CHECK (Stipendio > 0), non permette tuple con stipendio negtivo, m mmette vlori nulli per l ttriuto Stipendio Se CHECK viene espresso livello di tell (nziché nell definizione dell ttriuto) è possiile fre riferimento più ttriuti dell tell stess CHECK (ImportoLordo = Netto + Ritenute) In DB il CHECK può usre solo condizioni vlutili sull singol tupl SQL - Bsi Sistemi Informtivi L-A 1 6

7 Vincoli con nomi A fini dignostici (e di documentzione) è spesso utile spere qule vincolo è stto violto seguito di un zione sul DB A tle scopo è possiile ssocire dei nomi i vincoli, d esempio: Stipendio int CONSTRAINT StipendioPositivo CHECK (Stipendio > 0), CONSTRAINT ForeignKeySedi FOREIGN KEY (Sede) REFERENCES Sedi SQL - Bsi Sistemi Informtivi L-A 13 Modific di telle Medinte l istruzione ALTER TABLE è possiile modificre lo schem di un tell, in prticolre: Aggiungendo ttriuti Aggiungendo o rimuovendo vincoli ALTER TABLE Imp ADD COLUMN Sesso chr(1) CHECK (Sesso in ( M, F )) ADD CONSTRAINT StipendioMx CHECK (Stipendio < 4000) DROP CONSTRAINT StipendioPositivo DROP UNIQUE(Cognome,Nome); Se si ggiunge un ttriuto con vincolo NOT NULL, isogn prevedere un vlore di defult, che il sistem ssegnerà utomticmente tutte le tuple già presenti ADD COLUMN Istruzione chr(10) NOT NULL DEFAULT Lure SQL - Bsi Sistemi Informtivi L-A 14 7

8 Dt Mnipultion Lnguge (DML) Le istruzioni principli del DML di SQL sono SELECT INSERT DELETE UPDATE esegue interrogzioni (query) sul DB inserisce nuove tuple nel DB cncell tuple dl DB modific tuple del DB INSERT può usre il risultto di un query per eseguire inserimenti multipli DELETE e UPDATE possono fre uso di condizioni per specificre le tuple d cncellre o modificre SQL - Bsi Sistemi Informtivi L-A 15 DB di riferimento per gli esempi Imp Sedi CodImp Nome Sede Ruolo Stipendio Sede Responsile Citt E001 Rossi Anlist 000 Biondi Milno E00 Verdi Sistemist 1500 Mori Bologn E003 Binchi Progrmmtore 1000 S03 Fulvi Milno E004 Gilli S03 Progrmmtore 1000 E005 E006 E007 E008 Neri Grigi Violetti Arnci Anlist Sistemist Progrmmtore Progrmmtore Prog CodProg P01 P01 Citt Milno Bologn P0 Bologn SQL - Bsi Sistemi Informtivi L-A 16 8

9 L istruzione SELECT È l istruzione che permette di eseguire interrogzioni (query) sul DB L form di se è: SELECT A1,A,..,Am FROM R1,R,..,Rn WHERE <condizione> ovvero: SELECT (o TARGET) list clusol FROM clusol WHERE (cos si vuole come risultto) (d dove si prende) (che condizioni deve soddisfre) SQL - Bsi Sistemi Informtivi L-A 17 SELECT su singol tell Codice, nome e ruolo dei dipendenti dell sede SELECT CodImp, Nome, Ruolo WHERE Sede = Si ottiene in questo modo: CodImp E001 E003 E006 E007 L clusol FROM dice di prendere l tell IMP Nome Rossi Binchi Sistemist L clusol WHERE dice di prendere solo le tuple per cui Sede= Infine, si estrggono i vlori degli ttriuti (o colonne ) nell SELECT list Grigi Violetti Ruolo Anlist Progrmmtore Progrmmtore Equivle π CodImp,Nome,Ruolo (σ Sede = (Imp)) SQL - Bsi Sistemi Informtivi L-A 18 9

10 SELECT senz proiezione Se si vogliono tutti gli ttriuti: SELECT CodImp, Nome, Sede, Ruolo, Stipendio WHERE Sede = si può revire con: SELECT * WHERE Sede = SQL - Bsi Sistemi Informtivi L-A 19 SELECT senz condizione Se si vogliono tutte le tuple: SELECT CodImp, Nome, Ruolo Quindi SELECT * restituisce tutt l istnz di Imp SQL - Bsi Sistemi Informtivi L-A 0 10

11 Telle vs Relzioni Il risultto di un query SQL può contenere righe duplicte: SELECT Ruolo WHERE Sede = Ruolo Anlist Progrmmtore Sistemist Progrmmtore Per eliminrle si us l opzione DISTINCT nell SELECT list SELECT DISTINCT Ruolo WHERE Sede = Ruolo Anlist Progrmmtore Sistemist SQL - Bsi Sistemi Informtivi L-A 1 Espressioni nell clusol SELECT L SELECT list può contenere non solo ttriuti, m nche espressioni: SELECT CodImp, Stipendio*1 WHERE Sede = CodImp E001 E003 E006 E Si noti che in questo cso l second colonn non h un nome SQL - Bsi Sistemi Informtivi L-A 11

12 Ridenominzione delle colonne Ad ogni elemento dell SELECT list è possiile ssocire un nome picere: SELECT CodImp AS Codice, Stipendio*1 AS StipendioAnnuo Codice StipendioAnnuo WHERE Sede = E001 E003 E006 E L prol chive AS può nche essere omess: SELECT CodImp Codice,... SQL - Bsi Sistemi Informtivi L-A 3 Pseudonimi Per chirezz, ogni nome di colonn può essere scritto prefissndolo con il nome dell tell: SELECT Imp.CodImp AS Codice, Imp.Stipendio*1 AS StipendioAnnuo WHERE Imp.Sede = e si può nche usre uno pseudonimo (lis) in luogo del nome dell tell SELECT I.CodImp AS Codice, I.Stipendio*1 AS StipendioAnnuo I -- oppure Imp AS I WHERE I.Sede = SQL - Bsi Sistemi Informtivi L-A 4 1

13 Opertore LIKE L opertore LIKE, medinte le wildcrd _ (un crttere ritrrio) e % (un string ritrri), permette di esprimere dei pttern su stringhe Nomi degli impiegti che finiscono con un i e hnno un i in second posizione SELECT Nome WHERE Nome LIKE _i%i Nome Binchi Gilli Violetti SQL - Bsi Sistemi Informtivi L-A 5 Opertore BETWEEN L opertore BETWEEN permette di esprimere condizioni di pprtenenz un intervllo Nome e stipendio degli impiegti che hnno uno stipendio compreso tr 1300 e 000 Euro (estremi inclusi) SELECT Nome, Stipendio WHERE Stipendio BETWEEN 1300 AND 000 Nome Rossi Verdi Stipendio SQL - Bsi Sistemi Informtivi L-A 6 13

14 Opertore IN L opertore IN permette di esprimere condizioni di pprtenenz un insieme Codici e sedi degli impiegti delle sedi e S03 SELECT CodImp, Sede WHERE Sede IN (, S03 ) Lo stesso risultto si ottiene scrivendo: CodImp E00 E004 E005 E008 Sede S03 SELECT CodImp, Sede WHERE Sede = OR Sede = S03 SQL - Bsi Sistemi Informtivi L-A 7 Vlori nulli Il trttmento dei vlori nulli si s su qunto già visto in lger relzionle, quindi SELECT CodImp WHERE Stipendio > 1500 OR Stipendio <= 1500 restituisce solo CodImp E001 E00 E003 E005 Imp CodImp E001 E00 E003 E004 E005 E006 E007 E008 Sede S03 Stipendio NULL 500 NULL E007 E008 SQL - Bsi Sistemi Informtivi L-A 8 14

15 Logic 3 vlori in SQL Nel cso di espressioni complesse, SQL ricorre ll logic 3 vlori: vero (V), flso (F) e sconosciuto (?) SELECT CodImp, Sede, Stipendio WHERE (Sede = S03 ) OR (Stipendio > 1500) CodImp E001 E004 E005 Sede S03 Stipendio 000 NULL 500 Per verificre se un vlore è NULL si us l opertore IS NOT (A IS NULL) si scrive nche A IS NOT NULL SELECT CodImp WHERE Stipendio IS NULL CodImp E004 E006 SQL - Bsi Sistemi Informtivi L-A 9 Ordinmento del risultto Per ordinre il risultto di un query secondo i vlori di un o più colonne si introduce l clusol ORDER BY, e per ogni colonn si specific se l ordinmento è per vlori scendenti (ASC, il defult) o discendenti (DESC) SELECT Nome, Stipendio ORDER BY Stipendio DESC, Nome Nome Neri Rossi Verdi Arnci Grigi Binchi Gilli Violetti Stipendio SQL - Bsi Sistemi Informtivi L-A 30 15

16 Interrogzioni su più telle L interrogzione SELECT I.Nome, I.Sede, S.Citt I, Sedi S WHERE I.Sede = S.Sede AND I.Ruolo = Progrmmtore si interpret come segue: Si esegue il prodotto Crtesino di Imp e Sedi Si pplicno i predicti dell clusol WHERE Si estrggono le colonne dell SELECT list Il predicto I.Sede = S.Sede è detto predicto di join, in qunto stilisce il criterio con cui le tuple di Imp e di Sedi devono essere cominte SQL - Bsi Sistemi Informtivi L-A 31 Interrogzioni su più telle: risultto Dopo vere pplicto il predicto I.Sede = S.Sede: I.CodImp I.Nome I.Sede I.Ruolo I.Stipendio S.Sede S.Responsile S.Citt E001 Rossi Anlist 000 Biondi Milno E00 Verdi Sistemist 1500 Mori Bologn E003 Binchi Progrmmtore 1000 Biondi Milno E004 Gilli S03 Progrmmtore 1000 S03 Fulvi Milno E005 Neri Anlist 500 Mori Bologn E006 Grigi Sistemist 1100 Biondi Milno E007 Violetti Progrmmtore 1000 Biondi Milno E008 Arnci Progrmmtore 100 Mori Bologn SQL - Bsi Sistemi Informtivi L-A 3 16

17 Ridenominzione del risultto Se l SELECT list contiene o più colonne con lo stesso nome, è necessrio operre un ridenominzione per ottenere un output con tutte le colonne intestte SELECT I.Sede AS SedeE001, S.Sede AS AltrSede I, Sedi S WHERE I.Sede <> S.Sede AND I.CodImp = E001 SedeE001 AltrSede S03 SQL - Bsi Sistemi Informtivi L-A 33 Self Join L uso di lis è forzto qundo si deve eseguire un self-join Chi sono i nonni di Ann? Genitori G1 Genitore Figlio Luc Ann Mri Ann Giorgio Luc Silvi Mri Enzo Mri Genitori G Genitore Figlio Luc Ann Mri Ann Giorgio Luc Silvi Mri Enzo Mri SELECT G1.Genitore AS Nonno FROM Genitori G1, Genitori G WHERE G1.Figlio = G.Genitore AND G.Figlio = Ann SQL - Bsi Sistemi Informtivi L-A 34 17

18 Join espliciti Anziché scrivere i predicti di join nell clusol WHERE, è possiile costruire un joined tle direttmente nell clusol FROM SELECT I.Nome, I.Sede, S.Citt I JOIN Sedi S ON (I.Sede = S.Sede) WHERE I.Ruolo = Progrmmtore in cui JOIN si può nche scrivere INNER JOIN Altri tipi di join espliciti sono: LEFT [OUTER] JOIN RIGHT [OUTER] JOIN FULL [OUTER] JOIN NATURAL JOIN DB non support il join nturle SQL - Bsi Sistemi Informtivi L-A 35 Opertori insiemistici L istruzione SELECT non permette di eseguire unione, intersezione e differenz di telle Ciò che si può fre è cominre in modo opportuno i risultti di due istruzioni SELECT, medinte gli opertori UNION, INTERSECT, EXCEPT In tutti i csi gli elementi delle SELECT list devono vere tipi comptiili e gli stessi nomi se si vogliono colonne con un intestzione definit L ordine degli elementi è importnte (notzione posizionle) Il risultto è in ogni cso privo di duplicti, per mntenerli occorre ggiungere l opzione ALL: UNION ALL, INTERSECT ALL, EXCEPT ALL SQL - Bsi Sistemi Informtivi L-A 36 18

19 Opertori insiemistici: esempi (1) R A B c S C SELECT A A FROM R 1 UNION SELECT C AS A 3 FROM S B c c d SELECT A FROM R 1 UNION SELECT C 3 FROM S 4 SELECT A,B FROM R UNION SELECT B,C AS A FROM S Non corrett! SELECT B FROM R UNION ALL SELECT B FROM S B c c c d SQL - Bsi Sistemi Informtivi L-A 37 Opertori insiemistici: esempi () R A 1 1 B c SELECT B FROM R INTERSECT SELECT B FROM S B c SELECT B FROM S EXCEPT SELECT B FROM R B d 3 S C B c c SELECT B FROM R INTERSECT ALL SELECT B FROM S B c SELECT B FROM R EXCEPT ALL SELECT B FROM S B 4 d SQL - Bsi Sistemi Informtivi L-A 38 19

20 Istruzioni di ggiornmento dei dti Le istruzioni che permettono di ggiornre il DB sono INSERT DELETE UPDATE inserisce nuove tuple nel DB cncell tuple dl DB modific tuple del DB INSERT può usre il risultto di un query per eseguire inserimenti multipli DELETE e UPDATE possono fre uso di condizioni per specificre le tuple d cncellre o modificre In ogni cso gli ggiornmenti rigurdno un sol relzione SQL - Bsi Sistemi Informtivi L-A 39 Inserimento di tuple: cso singolo È possiile inserire un nuov tupl specificndone i vlori INSERT INTO Sedi(Sede,Responsile,Citt) VALUES ( S04, Bruni, Firenze ) Ci deve essere corrispondenz tr ttriuti e vlori L list degli ttriuti si può omettere, nel qul cso vle l ordine con cui sono stti definiti Se l list non include tutti gli ttriuti, i restnti ssumono vlore NULL (se mmesso) o il vlore di defult (se specificto) INSERT INTO Sedi(Sede,Citt) -- sede senz responsile VALUES ( S04, Firenze ) SQL - Bsi Sistemi Informtivi L-A 40 0

21 Inserimento di tuple: cso multiplo È possiile nche inserire le tuple che risultno d un query INSERT INTO SediBologn(SedeBO,Resp) SELECT Sede,Responsile FROM Sedi WHERE Citt = Bologn Vlgono ncor le regole viste per il cso singolo Gli schemi del risultto e dell tell in cui si inseriscono le tuple possono essere diversi, l importnte è che i tipi delle colonne sino comptiili SQL - Bsi Sistemi Informtivi L-A 41 Cncellzione di tuple L istruzione DELETE può fre uso di un condizione per specificre le tuple d cncellre DELETE FROM Sedi -- elimin le sedi di Bologn WHERE Citt = Bologn Che succede se l cncellzione port violre il vincolo di integrità referenzile? (d es.: che ccde gli impiegti delle sedi di Bologn?) lo vedimo tr minuti SQL - Bsi Sistemi Informtivi L-A 4 1

22 Modific di tuple Anche l istruzione UPDATE può fre uso di un condizione per specificre le tuple d modificre e di espressioni per determinre i nuovi vlori UPDATE Sedi SET Responsile = Bruni, Citt = Firenze WHERE Sede = UPDATE Imp SET Stipendio = 1.1*Stipendio WHERE Ruolo = Progrmmtore Anche l UPDATE può portre violre il vincolo di integrità referenzile SQL - Bsi Sistemi Informtivi L-A 43 Politiche di rezione Anziché lscire l progrmmtore il compito di grntire che fronte di cncellzioni e modifiche i vincoli di integrità referenzile sino rispettti, si possono specificre opportune politiche di rezione in fse di definizione degli schemi CREATE TABLE Imp ( CodImp chr(4) PRIMARY KEY, Sede chr(3),... FOREIGN KEY Sede REFERENCES Sedi ON DELETE CASCADE -- cncellzione in csct ON UPDATE NO ACTION -- modifiche non permesse Altre politiche: SET NULL e SET DEFAULT SQL - Bsi Sistemi Informtivi L-A 44

23 Rissumimo: Il linguggio SQL è lo stndrd de fcto per intergire con DB relzionli Si discost dl modello relzionle in qunto permette l presenz di tuple duplicte (telle nziché relzioni) L definizione delle telle permette di esprimere vincoli e nche di specificre politiche di rezione fronte di violzioni dell integrità referenzile L istruzione SELECT consiste nell su form se di 3 prti: SELECT, FROM e WHERE A queste si ggiunge ORDER BY, per ordinre il risultto (e ltre che vedremo) Per trttre i vlori nulli, SQL ricorre un logic 3 vlori (vero, flso e sconosciuto) SQL - Bsi Sistemi Informtivi L-A 45 3

Il linguaggio SQL: le basi

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

Dettagli

Il linguaggio SQL: le basi. Versione elettronica: SQLa-basi.pdf

Il linguaggio SQL: le basi. Versione elettronica: SQLa-basi.pdf Il linguaggio SQL: le basi Versione elettronica: SQLa-basi.pdf SQL: caratteristiche generali SQL (Structured Query Language) è il linguaggio standard de facto per DBMS relazionali, che riunisce in sé funzionalità

Dettagli

Il linguaggio SQL: query innestate

Il linguaggio SQL: query innestate Il linguaggio SQL: query innestate Sistemi Informativi L-A Home Page del corso: http://www-db.deis.unibo.it/courses/sil-a/ Versione elettronica: SQLc-subquery.pdf Sistemi Informativi L-A DB di riferimento

Dettagli

Il linguaggio SQL: raggruppamenti. Versione elettronica: SQLb-gruppi.pdf

Il linguaggio SQL: raggruppamenti. Versione elettronica: SQLb-gruppi.pdf Il linguaggio SQL: raggruppamenti Versione elettronica: SQLb-gruppi.pdf Informazioni di sintesi Quanto sinora visto permette di estrarre dal DB informazioni che si riferiscono a singole tuple (eventualmente

Dettagli

Il linguaggio SQL: DML di base. Versione elettronica: 04.2.SQL.DMLbase.pdf

Il linguaggio SQL: DML di base. Versione elettronica: 04.2.SQL.DMLbase.pdf Il linguaggio SQL: DML di base Sistemi Informativi T Versione elettronica: 04.2.SQL.DMLbase.pdf Data Manipulation Language (DML) Le istruzioni del DML di SQL sono SELECT INSERT DELETE UPDATE esegue interrogazioni

Dettagli

Il linguaggio SQL: DML di base

Il linguaggio SQL: DML di base Il linguaggio SQL: DML di base Sistemi Informativi T Versione elettronica: 04.2.SQL.DMLbase.pdf Data Manipulation Language (DML) Le istruzioni del DML di SQL sono SELECT INSERT DELETE UPDATE esegue interrogazioni

Dettagli

Basi di Dati: Corso di laboratorio

Basi di Dati: Corso di laboratorio Basi di Dati: Corso di laboratorio Lezione 3 Raffaella Gentilini 1 / 52 Sommario 1 Il DML di SQL: Interrogazione di una BD 2 / 52 Data Manipulation Language (DML) Istruzioni del DML Le istruzioni del DML

Dettagli

Il linguaggio SQL: DDL di base

Il 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,

Dettagli

Linguaggio SQL. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni

Linguaggio SQL. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni Linguaggio SQL Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni SQL: caratteristiche generali SQL (Structured Query Language) è il linguaggio standard de facto per DBMS relazionali, che

Dettagli

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

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

Dettagli

Data Management Software. Il linguaggio SQL. Query Innestate. Paolo Avallone Sr Consulting IT Specialist DB2, Data Management 10 Settembre 2003

Data Management Software. Il linguaggio SQL. Query Innestate. Paolo Avallone Sr Consulting IT Specialist DB2, Data Management 10 Settembre 2003 DB2 Data Management Software Il linguaggio SQL Query Innestate Paolo Avallone Sr Consulting IT Specialist DB2, Data Management 10 Settembre 2003 LEGGERE LE SEGUENTI ATTENZIONI Le informazioni contenute

Dettagli

Basi di Dati: Corso di laboratorio

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

Dettagli

Il linguaggio SQL: viste e tabelle derivate. DB di riferimento per gli esempi

Il linguaggio SQL: viste e tabelle derivate. DB di riferimento per gli esempi Il linguaggio SQL: viste e tabelle derivate Dario Maio http://bias.csr.unibo.it/maio/ dmaio@deis.unibo.it 1 DB di riferimento per gli esempi Imp Sedi CodImp Nome Sede Ruolo Stipendio Sede Responsabile

Dettagli

Interrogazioni in SQL

Interrogazioni in SQL Interrogazioni in SQL Corso di Basi di Dati 4 dicembre 2013 1 Interrogazioni sullo schema aziendale 1. Ottenere i nomi dei dipartimenti dislocati in piú sedi. 2. Ottenere il numero di supervisori. 3. Produrre

Dettagli

Il linguaggio SQL: query innestate

Il linguaggio SQL: query innestate Il linguaggio SQL: query innestate Sistemi Informativi L-A Home Page del corso: http://www-db.deis.unibo.it/courses/sil-a/ Versione elettronica: SQLc-subquery.pdf Sistemi Informativi L-A DB di riferimento

Dettagli

MAX, SUM, AVG, COUNT)

MAX, SUM, AVG, COUNT) INTRODUZIONE A SQL Definizione di tabelle e domini Alcuni vincoli di integrità Struttura base SELECT FROM WHERE Funzioni di aggregazione (MIN, MAX, SUM, AVG, COUNT) Query da più tabelle (FROM R1, Rk) Join

Dettagli

Il linguaggio SQL: viste e tabelle derivate. Versione elettronica: SQLd-viste.pdf

Il linguaggio SQL: viste e tabelle derivate. Versione elettronica: SQLd-viste.pdf Il linguaggio SQL: viste e tabelle derivate Versione elettronica: SQLd-viste.pdf DB di riferimento per gli esempi Imp Sedi CodImp Nome Sede Ruolo Stipendio Sede Responsabile Citta E001 Rossi S01 Analista

Dettagli

SQL. SQL: "storia. Sviluppato nella metà degli anni settanta (1974) presso il laboratorio di ricerca IBM di S.Josè. Dal 1983 ca. "standard di fatto"

SQL. SQL: storia. Sviluppato nella metà degli anni settanta (1974) presso il laboratorio di ricerca IBM di S.Josè. Dal 1983 ca. standard di fatto SQL SQL: "storia Sviluppato nella metà degli anni settanta (194) presso il laboratorio di ricerca IBM di S.Josè Dal 1983 ca. "standard di fatto" E il linguaggio di riferimento per l interrogazione di DBMS

Dettagli

SQL quick reference. piccolo manuale di riferimento dei principali comandi SQL (prof. Claudio Maccherani, Perugia, 2013)

SQL quick reference. piccolo manuale di riferimento dei principali comandi SQL (prof. Claudio Maccherani, Perugia, 2013) SQL quick reference piccolo manuale di riferimento dei principali comandi SQL (prof. Claudio Maccherani, Perugia, 2013) I tipi dei dati di SQL sono: delimitatori delle costanti: TEXT(n) stringa di caratteri

Dettagli

SQL (STRUCTURED QUERY LANGUAGE)

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

Dettagli

Esercizi svolti a lezione

Esercizi svolti a lezione Esercizi svolti lezione Sistemi Informtivi T Versione elettronic: 0.esercizi.pdf NB: Questo file viene ggiornto periodicmente Versione del 27/09/2017 02.1 Normlizzzione in 1NF (1) Not: l numerzione (es.

Dettagli

Il linguaggio SQL. Evoluzione del linguaggio. I linguaggi dentro SQL. I dialeu SQL. U@lizzo di SQL SQL. A. Ferrari 1

Il linguaggio SQL. Evoluzione del linguaggio. I linguaggi dentro SQL. I dialeu SQL. U@lizzo di SQL SQL. A. Ferrari 1 Il linguaggio SQL Structured Query Language SQL è un linguaggio di interrogazione per database proge

Dettagli

Il linguaggio SQL: viste e tabelle derivate

Il linguaggio SQL: viste e tabelle derivate Il linguaggio SQL: viste e tabelle derivate Sistemi Informativi L-A Home Page del corso: http://www-db.deis.unibo.it/courses/sil-a/ Versione elettronica: SQLd-viste.pdf Sistemi Informativi L-A DB di riferimento

Dettagli

SQL e algebra relazionale

SQL e algebra relazionale SQL e algebra relazionale Il linguaggio SQL consente una maggiore espressività dell algebra relazionale grazie a costrutti che permettono: di definire join più sofisticati di ordinare le righe dei risultati

Dettagli

Manuale SQL. Manuale SQL - 1 -

Manuale SQL. Manuale SQL - 1 - Manuale SQL - 1 - Istruzioni DDL Creazione di una tabella : CREATE TABLE Il comando CREATE TABLE consente di definire una tabella del database specificandone le colonne, con il tipo di dati ad esse associate,

Dettagli

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

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

Dettagli

Laboratorio di Basi di Dati

Laboratorio di Basi di Dati Laboratorio di Basi di Dati Esercitazione PostgreSQL Dopo aver lanciato il client grafico pgadmin III di PostgreSQL svolgere le operazioni descritte nel seguito, tenendo presenti i suggerimenti forniti

Dettagli

SQL. SQL: una visione panoramica. SQL: "storia" Definizione dei dati

SQL. SQL: una visione panoramica. SQL: storia Definizione dei dati SQL SQL: una visione panoramica I lucidi presentati sono liberamente ispirati al contenuto del Capitolo 4 del libro Atzeni, Ceri, Paraboschi, Torlone Basi di dati - McGraw-Hill, 1999 Structured Query Language

Dettagli

SQL. Structured Query Language 1974: SEQUEL by IBM 1981: SQL by IBM 1986 1992: SQL ISO 9075:1992 SQL:1999 SQL:2003

SQL. Structured Query Language 1974: SEQUEL by IBM 1981: SQL by IBM 1986 1992: SQL ISO 9075:1992 SQL:1999 SQL:2003 SQL Structured Query Language 1974: SEQUEL by IBM 1981: SQL by IBM 1986 1992: SQL ISO 9075:1992 SQL:1999 SQL:2003 SQL Il linguaggio SQL è stato originariamente dichiarativo, diventando nel tempo sempre

Dettagli

Laboratorio di Basi di Dati

Laboratorio di Basi di Dati Laboratorio di Basi di Dati Docente: Alberto Belussi Lezione 2 Vincoli di integrità Proprietà che devono essere soddisfatte da ogni istanza della base di dati. Il soddisfacimento è definito rispetto al

Dettagli

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

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

Dettagli

Algebra Relazionale. Operazioni nel Modello Relazionale

Algebra Relazionale. Operazioni nel Modello Relazionale lger Relzionle lger Relzionle Operzioni nel Moello Relzionle Le operzioni sulle relzioni possono essere espresse in ue ormlismi i se: lger relzionle: le interrogzioni (query) sono espresse pplino opertori

Dettagli

Uno dei principali motivi del successo delle basi di dati: è diventato uno standard

Uno dei principali motivi del successo delle basi di dati: è diventato uno standard SQL [1] Concetti essenziali di SQL 2 Il linguaggio SQL Uno dei principali motivi del successo delle basi di dati: è diventato uno standard Fornisce un interfaccia dichiarativa di alto livello, permettendo

Dettagli

Documentazione SQL. Argomento Sintassi Note Definizione schema create schema [NomeSchema] [[authorization] Autorizzazione] {DefElementoSchema}

Documentazione SQL. Argomento Sintassi Note Definizione schema create schema [NomeSchema] [[authorization] Autorizzazione] {DefElementoSchema} Documentazione SQL Argomento Sintassi Note Definizione schema create schema [NomeSchema] [[authorization] Autorizzazione] {DefElementoSchema} Definizione tabella Definizione dominio Specifica di valori

Dettagli

OR true null false true true true true null true null null false true null false NOT

OR true null false true true true true null true null null false true null false NOT Il linguaggio SQL è un linguaggio standard per la definizione, manipolazione e interrogazione delle basi di dati relazionali ed ha le seguenti caratteristiche: è dichiarativo; opera su multiset di tuple,

Dettagli

Soluzione esercitazione 01

Soluzione esercitazione 01 Soluzione esercitazione 01 Sistemi Informativi L-A Home Page del corso: http://www-db.deis.unibo.it/courses/sil-a/ Versione elettronica: SolEse01.pdf Sistemi Informativi L-A Videonoleggio - caso A: tabella

Dettagli

SQL: Concetti Base -Prima Parte-

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

Dettagli

Structured. Language. Basi di Dati. Introduzione. DDL: Data Definition Language. Tipi di dato. Query. Modifica dei Dati

Structured. Language. Basi di Dati. Introduzione. DDL: Data Definition Language. Tipi di dato. Query. Modifica dei Dati Basi di Dati Matteo Longhi Structured Query Language Introduzione Standard creato nel 1976 da IBM Aggiornato (versione 2 nel 1992 (ANSI X3.135 e ISO 9075 Consente di: DDL: definire la struttura del DB

Dettagli

SQL - Structured Query Language

SQL - Structured Query Language SQL - Structured Query Language Lab 05 Alessandro Lori Università di Pisa 27 Aprile 2012 Riepilogo esercitazione precedente Operatori insiemistici (UNION, INTERSECT, EXCEPT) Riepilogo esercitazione precedente

Dettagli

Universita di Milano Bicocca Corso di Basi di dati 1 in elearning C. Batini 6. SQL DDL 6.2 Data Description Language - 2

Universita di Milano Bicocca Corso di Basi di dati 1 in elearning C. Batini 6. SQL DDL 6.2 Data Description Language - 2 Universita di Milano Bicocca Corso di Basi di dati 1 in elearning C. Batini 6. SQL DDL 6.2 Data Description Language - 2 Vincoli di integrita 2 Cosa e un vincolo di integrita E una proprieta sempre valida

Dettagli

SQL (STRUCTURED QUERY LANGUAGE)

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

Dettagli

Caratteristiche dei linguaggi per Database

Caratteristiche dei linguaggi per Database IL LINGUAGGIO Caratteristiche dei linguaggi per Database I linguaggi per basi di dati relazionali possiedono i comandi per: definizione del data base; manipolazione dei dati; associazione tra tabelle diverse;

Dettagli

Vincoli di Integrità Approccio dichiarativo alla loro implementazione

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

Dettagli

Interrogare una base di dati: algebra relazionale e SQL. Savino Castagnozzi Giorgio Macauda Michele Meomartino Salvatore Picerno Massimiliano Sartor

Interrogare una base di dati: algebra relazionale e SQL. Savino Castagnozzi Giorgio Macauda Michele Meomartino Salvatore Picerno Massimiliano Sartor Interrogare una base di dati: algebra relazionale e SQL Savino Castagnozzi Giorgio Macauda Michele Meomartino Salvatore Picerno Massimiliano Sartor Contesto didattico Il seguente materiale didattico è

Dettagli

SQL: DDL, VI, Aggiornamenti e Viste

SQL: DDL, VI, Aggiornamenti e Viste SQL: DDL, VI, Aggiornamenti e Viste 1 SQL è più di un semplice linguaggio di interrogazione v Linguaggio di definizione dati (Data-definition language, DDL): Crea/distrugge/modifica relazioni e viste Definisce

Dettagli

SUGLI INSIEMI. 1.Insiemi e operazioni su di essi

SUGLI INSIEMI. 1.Insiemi e operazioni su di essi SUGLI INSIEMI 1.Insiemi e operzioni su di essi Il concetto di insieme è primitivo ed è sinonimo di clsse, totlità. Si A un insieme di elementi qulunque. Per indicre che è un elemento di A scriveremo A.

Dettagli

Storia. Corso di Basi di Dati Spaziali. Componente DDL. Funzionalità. Esempio. Creazione di schema. Linguaggi: SQL. Storia:

Storia. Corso di Basi di Dati Spaziali. Componente DDL. Funzionalità. Esempio. Creazione di schema. Linguaggi: SQL. Storia: Corso di Basi di Dati Spaziali Linguaggi: SQL Angelo Montanari Donatella Gubiani Storia Storia: 1974: prima proposta SEQUEL 1981: prime implementazioni 1983: standard di fatto 1986, 1989, 1992 e 1999:

Dettagli

SPAZI VETTORIALI. 1. Spazi e sottospazi vettoriali

SPAZI VETTORIALI. 1. Spazi e sottospazi vettoriali SPAZI VETTORIALI 1. Spzi e sottospzi vettorili Definizione: Dto un insieme V non vuoto e un corpo K di sostegno si dice che V è un K-spzio vettorile o uno spzio vettorile su K se sono definite un operzione

Dettagli

Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, SQL

Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, SQL Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, 1996-2002 : SQL SQL originariamente "Structured Query Language", ora "nome proprio" linguaggio con varie funzionalità: contiene sia il DDL sia

Dettagli

George Boole ( )

George Boole ( ) Mtemtic Alger di Boole Cpitolo 5 Ivn Zivko George Boole (1815-1864) Mtemtico inglese del dicinnovesimo secolo, ffrontò in modo originle prolemi di logic. Le sue teorie trovno forte ppliczione un secolo

Dettagli

Definizione di domini

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

Dettagli

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

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

Dettagli

Prova Scritta di Basi di Dati

Prova Scritta di Basi di Dati Prova Scritta di Basi di Dati 4 Giugno 2007 COGNOME: NOME: MATRICOLA: Si prega di risolvere gli esercizi direttamente sui fogli del testo, negli spazi indicati. Usare il foglio protocollo solo per la brutta

Dettagli

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

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

Dettagli

DATABASE PER IL WEB. Programmazione Web 1

DATABASE PER IL WEB. Programmazione Web 1 DATABASE PER IL WEB Programmazione Web 1 Archite3ura web con database Client Tier Web/App Tier DB Tier Client Web / App Server Database Il server web comunica con un altro server che con8ene il la banca

Dettagli

SQL -DDL. FONDISTA(Nome, Nazione, Età) GAREGGIA(NomeFondista, NomeGara, Piazzamento) GARA(Nome, Luogo, Nazione, Lunghezza)

SQL -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

Dettagli

Sommario. Introduzione... 13

Sommario. Introduzione... 13 Sommario Introduzione... 13 1. Database pro e contro... 19 A cosa serve conoscere i database?...19 Le alternative alla gestione manuale...22 Quando non serve un database?...24 Domande ed esercizi...26

Dettagli

Basi di Dati e Sistemi Informativi. Structured Query Language

Basi 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

Dettagli

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

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

Dettagli

SQL - Tipi di dato Il linguaggio SQL

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

Dettagli

Basi di dati 8 settembre 2015 Esame Compito A Tempo a disposizione: due ore. Libri chiusi.

Basi di dati 8 settembre 2015 Esame Compito A Tempo a disposizione: due ore. Libri chiusi. Basi di dati 8 settembre 2015 Esame Compito A Tempo a disposizione: due ore. Libri chiusi. Cognome: Nome: Matricola: Domanda 1 (15%) Considerare la base di dati relazionale contenente le seguenti relazioni:

Dettagli

SQL e ACCESS. Modello relazionale PROBLEMA ENTITA STUDENTE

SQL 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)

Dettagli

Capitolo 4. Soluzione: Soluzione: Create domain STRING as character varying (256) default sconosciuto not null

Capitolo 4. Soluzione: Soluzione: Create domain STRING as character varying (256) default sconosciuto not null Capitolo 4 Esercizio 4.1 Ordinare i seguenti domini in base al valore massimo rappresentable, supponendo che integer abbia una rappresentazione a 32 bit e smallint a 16 bit: numeric(12,4), decimal(10),

Dettagli

Esercitazione 3 SQL 2

Esercitazione 3 SQL 2 Esercitazione 3 SQL 2 Basi di dati - prof. Silvio Salza - a.a. 2014-2015 E3-1 Schema della base di dati Persone (Nome, Sesso, Anno, Città) Discendenza (Genitore, Figlio) Stato (Città, Inizio, Fine, Stato)

Dettagli

Istruzioni DML di SQL

Istruzioni DML di SQL Istruzioni DML di SQL Pag. 99 par.4 1 Sintassi: Costrutto: INSERT INTO (Inserimento di dati in tabelle) INSERT INTO [(, ,, )] VALUES (, ,

Dettagli

Basi di Dati: Corso di laboratorio

Basi di Dati: Corso di laboratorio Basi di Dati: Corso di laboratorio Lezioni 6 7 Raffaella Gentilini 1 / 46 Sommario 1 Subquery (o Interrogazioni Nidificate) Interrogazioni Annidate con Predicati di Confronto Interrogazioni Annidate con

Dettagli

IL CALCOLO LETTERALE: I MONOMI Conoscenze. per a = - 2 vale:

IL CALCOLO LETTERALE: I MONOMI Conoscenze. per a = - 2 vale: IL CALCOLO LETTERALE: I MONOMI Conoscenze. Complet.. Un espressione letterle è un scrittur in cui compiono operzioni tr numeri rppresentti, tutti o in prte, d lettere. Per clcolre il vlore numerico di

Dettagli

PROGRAMMA DI CLASSE 5AI

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

Dettagli

Aniello Murano NP- Completezza (seconda parte)

Aniello Murano NP- Completezza (seconda parte) Aniello Murno NP- Completezz (second prte) 15 Lezione n. Prole chive: Np-completezz Corso di Lure: Informtic Codice: Emil Docente: murno@ n.infn.it A.A. 2008-2009 Definizione di NP- COMPLETEZZA Si ricordi

Dettagli

Interrogazioni nidificate

Interrogazioni nidificate Interrogazioni nidificate Nella clausola where si possono utilizzare valori prodotti da altre istruzioni select utilizzando any (qualsiasi) o all (tutti) insieme agli operatori di confronto Trovare nome,

Dettagli

INTEGRALI IMPROPRI. f(x) dx. e la funzione f(x) si dice integrabile in senso improprio su (a, b]. Se tale limite esiste ma

INTEGRALI IMPROPRI. f(x) dx. e la funzione f(x) si dice integrabile in senso improprio su (a, b]. Se tale limite esiste ma INTEGRALI IMPROPRI. Integrli impropri su intervlli itti Dt un funzione f() continu in [, b), ponimo ε f() = f() ε + qundo il ite esiste. Se tle ite esiste finito, l integrle improprio si dice convergente

Dettagli

Basi di Dati: Corso di laboratorio

Basi di Dati: Corso di laboratorio Basi di Dati: Corso di laboratorio Lezione 6 Raffaella Gentilini 1 / 40 Sommario 1 Viste 2 3 2 / 40 Viste Viste le viste sono tabelle virtuali corrispondono al risultato di una query (SELECT) valutata

Dettagli

Capitolo 5. Integrali. 5.1 Integrali di funzioni a gradinata

Capitolo 5. Integrali. 5.1 Integrali di funzioni a gradinata Cpitolo 5 Integrli 5.1 Integrli di funzioni grdint Un concetto molto semplice m di fondmentle importnz per l trttzione dell integrle di Riemnn è quello di divisione di un intervllo [, b]. In sostnz si

Dettagli

IL CALCOLO LETTERALE: I MONOMI Conoscenze. per a = - 2 vale:

IL CALCOLO LETTERALE: I MONOMI Conoscenze. per a = - 2 vale: IL CALCOLO LETTERALE: I MONOMI Conoscenze. Complet.. Un espressione letterle è.... Per clcolre il vlore numerico di un espressione letterle isogn...... c. Non si possono ssegnre lle lettere che compiono

Dettagli

LABORATORIO di INFORMATICA

LABORATORIO di INFORMATICA Università degli Studi di Cagliari Corso di Laurea Magistrale in Ingegneria per l Ambiente ed il Territorio LABORATORIO di INFORMATICA A.A. 2010/2011 Prof. Giorgio Giacinto IL MODELLO RELAZIONALE http://www.diee.unica.it/giacinto/lab

Dettagli

B8. Equazioni di secondo grado

B8. Equazioni di secondo grado B8. Equzioni di secondo grdo B8.1 Legge di nnullmento del prodotto Spendo che b0 si può dedurre che 0 oppure b0. Quest è l legge di nnullmento del prodotto. Pertnto spendo che (-1) (+)0 llor dovrà vlere

Dettagli

Laurea triennale in Scienze della Natura a.a. 2009/2010. Regole di Calcolo

Laurea triennale in Scienze della Natura a.a. 2009/2010. Regole di Calcolo Lure triennle in Scienze dell Ntur.. 2009/200 Regole di Clcolo In queste note esminimo lcune conseguenze degli ssiomi reltivi lle operzioni e ll ordinmento nell insieme R dei numeri reli. L obiettivo principle

Dettagli

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

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

Dettagli

Valutazione di una espressione. Espressioni. Espressioni semplici: variabili. Espressioni semplici: costanti

Valutazione di una espressione. Espressioni. Espressioni semplici: variabili. Espressioni semplici: costanti Espressioni Vlutzione di un espressione Ogni espressione E h: Un espressione E del linguggio C può essere definit formlmente come segue (definizione induttiv): E è un espressione semplice. Si Op n un opertore

Dettagli

Unità D1.2 Selezione e proiezione

Unità D1.2 Selezione e proiezione (A) CONOSCENZA TEMINOLOGICA Dre un reve esrizione ei termini introotti: ienominzione Selezione Proiezione Composizione i operzioni (B) CONOSCENZA E COMPETENZA isponere lle seguenti omne proueno nhe qulhe

Dettagli

DBMS (Data Base Management System)

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

Dettagli

SQL Sintassi Dei Comandi

SQL 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

Dettagli

Funzioni razionali fratte

Funzioni razionali fratte Funzioni rzionli frtte Per illustrre l medizione che AlNuSet fornisce per lo studio delle funzioni rzionli frtte, inizimo con il considerre l funzione f ( ) l vrire del prmetro. L su rppresentzione nell

Dettagli

Esercitazione: Interrogazioni SQL

Esercitazione: Interrogazioni SQL Laurea in Ingegneria Informatica SAPIENZA Università di Roma Insegnamento di Basi di Dati Esercitazione: Interrogazioni SQL Domenico Fabio Savo 1 Sommario 1. Creazione del database utilizzato per l esercitazione

Dettagli

Query. Query (Interrogazioni) SQL SQL. Significato dell interrogazione. Sintassi

Query. Query (Interrogazioni) SQL SQL. Significato dell interrogazione. Sintassi Informatica della Facoltà di Lingue e Letterature dell Università degli Studi di Torino. Qualsiasi altro Query (Interrogazioni) SQL Materiale aggiuntivo per il corso di laurea in Lingue e Culture per il

Dettagli

Il linguaggio SQL. è di fatto lo standard tra i linguaggi per la gestione di data base relazionali.

Il 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

Dettagli

Structured Query Language

Structured Query Language IL LINGUAGGIO SQL Structured Query Language Contiene sia il DDL sia il DML, quindi consente di: Definire e creare il database Effettuare l inserimento, la cancellazione, l aggiornamento dei record di un

Dettagli

Vincoli di Integrità

Vincoli di Integrità Vincoli di Integrità Antonella Poggi Dipartimento di informatica e Sistemistica Sapienza Università di Roma Progetto di Applicazioni Software Anno accademico 2010-2011 Questi lucidi sono stati prodotti

Dettagli

ESERCIZI SQL. Esercizio 1

ESERCIZI SQL. Esercizio 1 ESERCIZI SQL 2 Esercizio 1 3 Esercizio 1 4 Esercizio 1 Si specifichino le seguenti interrogazioni SQL sulla base di dati relazionale AZIENDA. Si mostri il risultato di ciascuna interrogazione. 1. Si restituisca

Dettagli

Dichiarazione degli schemi in SQL DDL 1

Dichiarazione degli schemi in SQL DDL 1 Dichiarazione degli schemi in SQL DDL 1 Storia di SQL Definito nell'ambito del progetto SYSTEM R (IBM S. JOSE) nel 1976 Nome originario: SEQUEL Adottato progressivamente da tutti i sistemi commerciali

Dettagli

IL LINGUAGGIO SQL IDENTIFICATORI E TIPI DI DATI COMANDI E ISTRUZIONI

IL 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

Dettagli

Algebra Relazionale. algebra relazionale

Algebra Relazionale. algebra relazionale Algebra Relazionale algebra relazionale Linguaggi di Interrogazione linguaggi formali Algebra relazionale Calcolo relazionale Programmazione logica linguaggi programmativi SQL: Structured Query Language

Dettagli

Uso delle variabili di alias. SQL slide aggiuntive. Interrogazione 25. Interrogazione 26

Uso delle variabili di alias. SQL slide aggiuntive. Interrogazione 25. Interrogazione 26 Uso delle variabili di alias SQL slide aggiuntive Laurea magistrale in Scienze della mente Laurea magistrale in Psicologia dello sviluppo e dell'educazione educazione Non solo per disambiguare la notazione

Dettagli

Basi di dati: appello 14/07/06

Basi di dati: appello 14/07/06 Basi di dati: appello 14/07/06 Si consideri il seguente schema di base di dati che vuole tenere traccia dell attività di un agenzia che affitta appartamenti per vacanze nella città di Varazze. CLIENTE

Dettagli

Corso di Basi di Dati A.A. 2013/2014

Corso di Basi di Dati A.A. 2013/2014 Corso di Laurea in Ingegneria Gestionale Sapienza Università di Roma Corso di Basi di Dati A.A. 2013/2014 Tiziana Catarci, Andrea Marrella Ultimo aggiornamento : 29/03/2014 SQL : Structured Query Language

Dettagli

Basi di dati. SQL: concetti base

Basi di dati. SQL: concetti base Basi di dati SQL: concetti base SQL originariamente "Structured Query Language", ora "nome proprio" linguaggio con varie funzionalità: contiene sia il DDL sia il DML ne esistono varie versioni vediamo

Dettagli

SQL. Il nome sta per Structured Query Language Le interrogazioni SQL sono dichiarative

SQL. Il nome sta per Structured Query Language Le interrogazioni SQL sono dichiarative SQL SQL Il nome sta per Structured Query Language Le interrogazioni SQL sono dichiarative l utente specifica quale informazione è di suo interesse, ma non come estrarla dai dati Le interrogazioni vengono

Dettagli

BREVE APPENDICE SULLE UNITA' LOGARITMICHE

BREVE APPENDICE SULLE UNITA' LOGARITMICHE BREVE APPENDICE SULLE UNITA' LOGARITMICHE Per esprimere gudgni e ttenuzioni, nonché cifre di rumore e rpporti segnle-rumore si usno frequentemente le unità logritmiche. Come risultto, l grndezz in questione

Dettagli

Erasmo Modica. : K K K

Erasmo Modica.  : K K K L insieme dei numeri reli L INSIEME DEI NUMERI REALI Ersmo Modic helthinsurnce@tin.it www.glois.it Per introdurre l insieme dei numeri reli si hnno disposizione diversi modi. Generlmente l iennio si preferisce

Dettagli

Esercizi svolti Limiti. Prof. Chirizzi Marco.

Esercizi svolti Limiti. Prof. Chirizzi Marco. Cpitolo II Limiti delle funzioni di un vribile Esercizi svolti Limiti Prof. Chirizzi rco www.elettrone.ltervist.org 1) Verificre che risult: = Dobbimo provre che per ogni ε positivo, rbitrrimente piccolo,

Dettagli