SQL1 Structured Query Language Data Definition Language Data Manipulation Language Evoluzione Sequel IBM (1974) Standardizzazione ANSI/ISO: SQL-89, SQL-

Slides:



Advertisements
Presentazioni simili
Interrogazioni Semplici Le operazioni di interrogazione vengono specificate per mezzo dellistruzione select select ListaAttributi from ListaTabelle [where.
Advertisements

TIPI STANDARD DI SQL BOOLEAN Valori: vero, falso CHAR(n)
Funzioni in SQL.
Structured Query Language
SQL applicato a SQL Server
Microsoft SQL Server 2008 Utilizzo. Creazione DataBase CREATE DATABASE CREATE DATABASE Cinema.
Structured Query Language (SQL) Presentazione 13.1 Informatica Generale (Prof. Luca A. Ludovico)
SQL (Standard query language) Istruzioni per la creazione di una tabella: Create table ( tipo, (, [vincoli]) Primary key ( ) CHIVE PRIMARIA Foreign key(
Esercitazioni del Corso di Sistemi Informativi Marina Mongiello
Esercitazioni del Corso di Sistemi Informativi Marina Mongiello
SCUOLA INTERUNIVERSITARIA SICILIANA DI SPECIALIZZAZIONE PER LINSEGNAMENTO SECONDARIO Classe di Concorso: 42A Massimo Mancino MODULO DIDATTICO - Ambienti.
MySQL ___.
SQL Structured Query Language Comandi base di DML Rosalba Giugno Rosalba Giugno
SQL.
SQL Structured Query Language
Un DataBase Management System (DBMS) relazionale client/server.
MySQL Esercitazioni. Ripasso Connessione a MySQL. Creazione delle basi di dati e delle tablelle. Inserimento dei dati. Interrogazioni.
Application Code Dato Table Data Base Trigger Code 1° Controllo Procedure Client Side 3° Controllo Integrity Constraint 2° Controllo Event Driven BUSINESS.
SQL: Lezione 7 Nataliya Rassadko
SQL: Lezione 2 Esercitazione per il corso Basi di Dati Gabriel Kuper Nataliya Rassadko
Nataliya Rassadko SQL: Lezione 5 Nataliya Rassadko
SQL Esercitazione per il corso “Basi di Dati” Gabriel Kuper
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, 1999 Capitolo 4:SQL 11/10/2001.
SQL1 Indici elenco di valori di un attributo a ciascuno dei quali è associato lelenco delle posizioni (righe) del valore nella tabella create [unique]
SQL1 Modifica dei dati inserimento cancellazione modifica.
2000 Prentice Hall, Inc. All rights reserved. 1 Capitolo 6: Classi e astrazione dati 1.Introduzione 2.Definizione delle strutture 3.Accedere ai membri.
Duplicati Lalgebra relazionale non ammette duplicati, SQL li ammette. Quindi select Città from Persona where Cognome= Rossi estrae una lista di città in.
Sequence. CREARE UNA SEQUENCE CREATE SEQUENCE nome [INCREMENT BY n] [START WITH n] [MAXVALUE n | NOMAXVALUE] [MINVALUE n | NOMINVALUE] [CYCLE | NOCYCLE]
Gestione dati DML Statement. DML – Data Manipultion Language Unoperazione DML viene eseguita quando: aggiungendo nuove righe ad una tabella modificando.
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.
CHARACTER FUNCTION CHARACTER FUNCTIONS CASE- MANIPULATION FUNCTIONS
PRODOTTO CARTESIANO Otteniamo un prodotto cartesiano quando: viene omessa la condizione di join una condizione di join non è valida tutte le righe della.
FUNZIONI DI GRUPPO Le funzioni di gruppo operano su un set di record restituendo un risultato per il gruppo. AVG ([DISTINCT|ALL] n) media, ignora i valori.
Creazione e manipolazione tabelle. TABELLE una tabella può essere creata in qualsiasi momento,anche quando gli utenti stanno usando il database la struttura.
Constraints.
Componenti dell’architettura Oracle
SQL basato su ANSI (American National Standards Institute) – standard SQL SQL – Structured Query Language è un linguaggio dichiarativo e permette di comunicare.
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.
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.
1. Progettare il seguente DataBase in relazione ai due esempi presenti in piattaforma, Modulo 4, esempi 1 e 2: Considerare le informazioni per la gestione.
Università degli studi di Modena e Reggio Emilia Facoltà di Ingegneria di Modena Corso di Laurea Specialistica in Ingegneria Informatica Analisi e valutazione.
Microsoft Access Maschere.
Università degli studi di Catania
Filtered Index and Statistics Filtered Indexes Sergio Govoni
Moduli o Form I Moduli permettono all'utente di immettere informazioni...
sql: esempi di linguaggio sql nell'implementazione mysql
Basi di Dati e Sistemi Informativi
SUBQUERY Chi ha un salario maggiore di quello di Abel? Occorre scomporre la query in due sotto problemi: MAIN : quali impiegati hanno un salario maggiore.
Introduzione al linguaggio C. Cos’e’ il C? Il C e’ un linguaggio ad alto livello Un compilatore C prende in input un file contenente codice sorgente C.
Dato Table Data Base Application Code 1° Controllo Procedure Client Side 3° Controllo Integrity Constraint Trigger Code 2° Controllo Event Driven BUSINESS.
1 Basi di dati (Sistemi Informativi) Scuola di Dottorato in Scienze Veterinarie per la Salute Animale e la Sicurezza Alimentare a.a Ing. Mauro.
Il linguaggio MDX Il linguaggio MDX (MultiDimensional eXpression) è usato per recuperare e manipolare dati multidimensionali in SQL Server Analysis Services,
Dynamic SQL.
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.
Interrogazioni Le interrogazioni in SQL sono formulate in modo dichiarativo specificando cioè cosa si vuole ottenere e non come lo si vuole ottenere. L’interrogazione.
UNITÀ LESSICALI Simboli, identificatori, costanti, commenti Simboli: Identificatori: lettere, numeri, $, _, #
Interrogazioni Le interrogazioni in SQL sono formulate in modo dichiarativo specificando cioè cosa si vuole ottenere e non come lo si vuole ottenere. L’interrogazione.
Funzionalità del DBMS relazionale l Funzioni per –definizione della base di dati –inserimento / rimozione /aggiornamento di informazioni deve soddisfare.
UNITÀ LESSICALI Simboli, identificatori, costanti, commenti Simboli: Identificatori: lettere, numeri, $, _, #
Approfondimenti SQL.
Linguaggio SQL prima parte Linguaggio SQL prima parte A. Lorenzi, E. Cavalli INFORMATICA PER SISTEMI INFORMATIVI AZIENDALI Copyright © Istituto Italiano.
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.
ODMG.
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Interrogazione di una base di dati relazionale
COME SI CREA UNA TABELLA CON UNA CHIAVE ESTERNA
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Transcript della presentazione:

SQL1 Structured Query Language Data Definition Language Data Manipulation Language Evoluzione Sequel IBM (1974) Standardizzazione ANSI/ISO: SQL-89, SQL- 2, … Oracle SQL

SQL2 Programma del corso SQL linguaggio di definizione dello schema di una base di dati; specifica delle interrogazioni; uso del linguaggio di interrogazione per la definizione dei dati; comandi per il controllo e laccesso ai dati; interazione tra SQL ed i tradizionali linguaggi di programmazione PL/SQL SQL*Plus

SQL3 Terminologia SQL Relazioni = Tabelle Risultato di una interrogazione = Tabella Tupla = Riga Attributo = Colonna Nessuna distinzione fra maiuscole e minuscole (ad eccezione delle stringhe)

Esempio INOINOMELAVOROCAPODATA_ASSSTIPENDIODIPNO 7369SMITHIMPIEGATO ALLENVENDITORE WARDVENDITORE BLAKEMANAGER FORDANALISTA DIPNODIPNOMECITTA 10MAGAZZINOCHICAGO 20RICERCADALLAS 30VENDITENEW YORK 40MARKETINGBOSTON LIVELLOMINSALMAXSAL Tabella IMPIEGATI Tabella DIPARTIMENTO Tabella SALARI

SQL5 Tipi di dati elementari char (n) varchar2(n) number(o,d) integer decimal smallint real date long

SQL6 Il valore null null 0 null

SQL7 Proprietà delle tabelle Lordine delle righe è irrilevante Non esistono righe duplicate (possono però apparire righe duplicate nella risposta ad una query)

SQL8 Select select [distinct] from [where ] [order by [asc | desc] ];

SQL9 Esempi: selezione di colonne select CITTA, DIPNO from DIPARTIMENTO; select * from IMPIEGATI; select INOME, DIPNO, STIPENDIO*12 as SALARIO_ANNUO from IMPIEGATI;

SQL10 Funzioni numeriche +, -, *, /, mod, power, sqrt abs, ceil, floor, sign cos, cosh, sin, sinh, tan, tanh log, ln, exp round, trunc nvl vsize

SQL11 Funzioni su stringhe ||, concat initcap, lower, upper instr substr, rtrim length lpad, rpad soundex

SQL12 Funzioni di data add_months, months_between greatest, least last_day, next_day new_time round trunc to_char, to_date

SQL13 Esempi: distinct e order by select DIPNO from IMPIEGATI; select distinct DIPNO from IMPIEGATI; select INOME, DIPNO, DATA_ASS from IMPIEGATI order by DIPNO [asc], DATA_ASS desc;

SQL14 Esempi: selezione di tuple select LAVORO, STIPENDIO from IMPIEGATI where (CAPO = 7698 or CAPO = 7566) and STIPENDIO > 1500;

SQL15 Operatori nella clausola where logici: and, or di confronto: =, !=, <>, >, = di appartenenza: in, not in select * from DIPARTIMENTO where DIPNO in (20, 30); di valore nullo: is null, is not null select * from IMPIEGATI where CAPO is not null; di rango: between … and …, not between … and … select INO, INOME, STIPENDIO from IMPIEGATI where STIPENDIO between 1500 and 2500;

SQL16 Funzione like % carattere jolly _ marcatore di posizione Esempi … where CITTA like '%YORK%' … where CITTA not like '_A%' … where CITTA like '%A%'

SQL17 Funzioni di gruppo Operano su un gruppo di righe calcolando un singolo valore da un insieme di valori di una colonna count: conta il numero di righe per una colonna select count(*) from IMPIEGATI; select count(distinct LAVORO) from IMPIEGATI; select count(*) from IMPIEGATI where LAVORO='VENDITORE'; conta anche eventuali valori null

SQL18 Funzioni di gruppo (2) max: calcola il massimo dei valori di una colonna min: calcola il minimo dei valori di una colonna select min(STIPENDIO), max(STIPENDIO) from IMPIEGATI; select max(STIPENDIO)-min(STIPENDIO) from IMPIEGATI; select max(CITTA) from DIPARTIMENTO; ignorano le tuple che hanno valore null nella colonna specificata

SQL19 Funzioni di gruppo (3) sum: calcola la somma dei valori di una colonna avg: calcola la media dei valori di una colonna select sum(STIPENDIO) from IMPIEGATI where DIPNO=30; select avg(STIPENDIO) from IMPIEGATI where LAVORO='VENDITORE'; ignorano le tuple che hanno valore null nella colonna specificata applicabili solo a dati numerici

SQL20 Definizione dei dati create table ( [default] [ ] {, [default] [ ]} {, } );

SQL21 Nomi di colonna e di tabella devono iniziare con una lettera possono contenere numeri e _ possono essere lunghi fino a 30 caratteri i nomi di colonna devono essere unici allinterno di una tabella

SQL22 Esempio create table IMPIEGATI ( INO number(4), INOME varchar2(30), LAVORO char(10), CAPO number(4), DATA_ASS date, STIPENDIO number(7,2), DIPNO number(2) );

SQL23 describe per vedere la struttura di una tabella si puo usare il comando describe ; Esempio: describe IMPIEGATI;

SQL24 Vincoli [constraint ] primary key | unique | not null

SQL25 not null richiede che i valori dellattributo corrispondente siano diversi da null create table IMPIEGATI ( INO number(4) not null, INOME varchar2(30), LAVORO char(10), CAPO number(4), DATA_ASS date, STIPENDIO number(7,2), DIPNO number(2) );

SQL26 unique richiede che i valori dellattributo corrispondente siano tutti distinti (i valori null sono ammessi e non violano tale vincolo) create table IMPIEGATI ( INO number(4) not null unique, INOME varchar2(30)unique, LAVORO char(10), CAPO number(4), DATA_ASS date, STIPENDIO number(7,2), DIPNO number(2) );

SQL27 primary key definisce un identificatore unico per ogni tupla non ammette valori null create table IMPIEGATI ( INO number(4) constraint PK_IMP primary key, INOME varchar2(30) not null, LAVORO char(10), CAPO number(4), DATA_ASS date, STIPENDIO number(7,2), DIPNO number(2) );

SQL28 Esempio create table PROGETTO ( PNO number(3) constraint pk_prg primary key, PNOME varchar2(60) unique, PMGR number(4) not null, COMPONENTI number(5), BUDGET number(8,2) not null, PSTART date, PEND date );

SQL29 default consente di specificare un valore di default da assegnare ad un attributo quando ad esso non viene assegnato alcun valore PSTART date default (01-JAN-01),

SQL30 Vincoli di tabella I vincoli unique e primary key possono essere riferiti a piu colonne. In tal caso i vincoli devono essere definiti dopo che sono state definite tutte le colonne interessate constraint DATE_DIVERSE unique(PSTART, PEND)

SQL31 Checklist Quali attributi delle tuple devono essere memorizzati? Quali sono i tipi di dati degli attributi? Puo essere usato varchar2 al posto di char? Quali colonne costituiscono la chiave primaria? Quali colonne non ammettono valori nulli? Quali colonne non ammettono valori duplicati? Ci sono valori default per certe colonne?