Dott. Gianni Nigita Dott. Sebastiano Di Bella. 8 aprile

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Dott. Gianni Nigita Dott. Sebastiano Di Bella. 8 aprile 2012 1"

Transcript

1 Dott. Gianni Nigita Dott. Sebastiano Di Bella 8 aprile

2 Materiale didattico Libro di testo Paul DuBois, MySQL, Four Edition, Pearson Education, 2009 Documentazione on-line MySQL 8 aprile

3 Sommario Introduzione a MySQL Installazione MySQL Connessione/Disconnessione da un db MySQL Programmi Client Creazione Account e Privilegi Prompt MySQL Comandi MySQL (part I) Engine Tipi di dati Comandi MySQL (part II) Esempi Query NULL Funzioni & Operatori 8 aprile

4 MySQL: un po di storia Creato dalla società MySQL AB sin dal 1979 soltanto dal 1996 supporta anche SQL. Sun Microsystem nel 2008 acquista la società per 1 miliardo di dollari Nel 2010 Oracle acquista Sun per 7,5 miliardi di dollari possedendo così anche MySQL 8 aprile

5 MySQL è un RDBMS (I) Possiamo identificare 4 tipi di database in base alla loro struttura logica: Gerarchico: basato su una struttura ad albero in cui ogni dato che non sia a livello radice ha uno e un solo padre (anni 80) Reticolare: deriva da quello gerarchico, ne supera i limiti della struttura ad albero ma la sua complessità ne limita la diffusione Relazionale: organizza i dati in tabelle basandosi sulle relazione fra esse (MySQL) Ad oggetti: estende il concetto relazionale adattandolo alla programmazione ad oggetti 8 aprile

6 MySQL è un RDBMS (II) RDBMS (relational database management system) ovvero un DBMS basato sul modello relazione (Edgar F. Codd) Una Relazione è la struttura di una tabella (entità) definita da records (righe di dati) e da attributi (colonne della tabella di dati) Esempio: 8 aprile

7 MySQL Installation (I) Link: MySQL è disponibile per diverse piattaforme tra cui Linux e Windows; Altri Tool Utili MySQL Query Browser Tool grafico per l ottimizzazione delle query 8 aprile

8 MySQL Installation (II) MySQL Connector Per la connessione con altre piattaforme Java/.NET/ C++/ect.. MySQL Administrator Gestisce le operazioni (configuring, monitoring, start e stop) del server MySQL MySQL Migration Toolkit Tool per la migrazione di db da ORACLE/Access a MySQL 8 aprile

9 MySQL Installation (III) MySQL Workbench E un tool che fornisce la gestione grafica del server MySQL e dei database 8 aprile

10 Connect/Disconnect (I) Per connettersi al server è necessario fornire login e password localhost: hostname in cui risiede il MySQL root: username che possiede un account sul server -h indirizzo -u utente -P porta -p indica al server la richiesta della password all utente 8 aprile

11 Connect/Disconnect (II) Per uscire (quit o exit) 8 aprile

12 Per help Connect/Disconnect (III) 8 aprile

13 Connect/Disconnect (IV) Visualizzare alcune informazioni relative al server e alla connessione 8 aprile

14 Client (I) Login tramite QueryBrowser Nome Connessione 8 aprile

15 Client (II) 8 aprile

16 Client (III) XAMPP wnloads/workbench/5.2. html LAMP om/ WAMP com/en/ NOTA: Attenzione alla porta aprile

17 Client (IV) Download all indirizzo Oppure all interno dei pacchetti XAMPP LAMP WAMP 8 aprile

18 Client (V) 8 aprile

19 Client (VI) 8 aprile

20 Client (VII) 8 aprile

21 Client (VIII) 8 aprile

22 Client (IX) 8 aprile

23 Client (IX) 8 aprile

24 Client (X) 8 aprile

25 Client (XI) 8 aprile

26 Client (XII) 8 aprile

27 Client (XIII) 8 aprile

28 Client (XIV) 8 aprile

29 Client (XV) 8 aprile

30 Client (XVI) 8 aprile

31 Dentro il db world Client (XVII) tables funzioni db world 8 aprile

32 Client (XVIII) 8 aprile

33 Client (XIX) 8 aprile

34 Client (XX) 8 aprile

35 Client (XXI) svuota table cancella table 8 aprile

36 Client (XXII) 8 aprile

37 Creazione Account/Privilegi (I) Eseguito dall utente root mediante l uso del comando GRANT GRANT Tutte le operazioni: SELECT, INSERT... Nome db Nome tabella user password localhost, Indicando il nome di un server è possibile effettuare la connessione da un server specifico 8 aprile

38 Creazione Account/Privilegi (II) Mentre GRANT assegna i privilegi con REVOKE vengono ritirati: REVOKE (SELECT/ALL PRIVILEGES) on nome_db.( nome_tabella ;*) FROM 8 aprile

39 Prompt di MySQL mysql> Prompt Significato Pronto per ricevere un comando; -> In attesa della linea successiva per un comando multi-linea; > In attesa della linea successiva per un comando multi-linea, apice di apertura nella riga precedente; > In attesa della linea successiva per un comando multi-linea, doppio apice di apertura nella riga precedente; `> In attesa della linea successiva per un comando multi-linea, che fa riferimento ad un identificatore che inizia con backtick; 8 aprile

40 Esempi Ritorna utente e host con i quali si è fatto l accesso Ritorna la versione e la data corrente Ritorna l utente e la data corrente 8 aprile

41 Comandi (I) Mostra i db Scelgo il db 8 aprile

42 Comandi (II): show SHOW ha diverse forme che forniscono informazioni circa il db, le tables, le columns, o informazioni di status circa il server (help show) 8 aprile

43 Comandi (III): gestione db Creazione database: mysql> CREATE DATABASE world ; mysql> USE world ; Creazione con IF NOT EXISTS: mysql> CREATE DATABASE [IF NOT EXISTS] world ; Cancellazione database: mysql> DROP DATABASE [IF EXISTS] world ; 8 aprile

44 Comandi (IV): gestione table Creare una table: mysql> CREATE [TEMPORARY] TABLE [IF NOT EXISTS] nome_tabella [(definizione, )]; Temporary: la table è valida e visibile solo per la connessione corrente; If Not Exists: Per gestire gli errori in caso esista già la table; Definizione: Possono essere definizioni di una colonna oppure relative alla tabella 8 aprile

45 Comandi (V): gestione table mysql>create TABLE `City` (`ID` int(11) NOT NULL AUTO_INCREMENT, `Name` char(35) NOT NULL DEFAULT '', ` CountryCode` char(3) NOT NULL DEFAULT '', `District` char(20) NOT NULL DEFAULT '', `Population` int(11) NOT NULL DEFAULT '0', PRIMARY KEY (`ID`)) ENGINE=MyISAM AUTO_INCREMENT=4080 DEFAULT CHARSET=latin1; 8 aprile

46 Autoincrement Se NULL o NOT NULL non sono stati specificati il sistema per default associa il valore NULL Una colonna integer può avere l attributo addizionale AUTO_INCREMENT. Quando viene inserito un valore NULL (recommended) o zero (0) in una colonna AUTO_INCREMENT, alla colonna viene automaticamente inserito il successivo valore disponibile. Tipicamente il valore è value+1, dove value è il più grande valore presente nella tabella per quel campo. La sequenza AUTO_INCREMENT inizia con 1 8 aprile

47 Engine (I) MySQL mette a disposizione diversi tipi di tabelle, ovvero storage engine per la memorizzazione dei dati. Due sono i sistemi principali: 1. Transazionali: sono più sicuri, permettono di recuperare i dati anche in caso di crash, e consentono di effettuare modifiche tutte insieme 2. Non transazionali: sono più veloci, occupano meno spazio su disco e minor richiesta di memoria. Durante la creazione di una tabella si specifica il tipo tramite il comando ENGINE: mysql>create TABLE t (i INT) ENGINE=INNODB 8 aprile

48 Engine: MyISAM MyISAM è lo storage engine di default dal MySQL E basato sullo storage ISAM. Ogni tabella MyISAM è memorizzata all interno del disco con tre file: 1. un file.frm che contiene la definizione della tabella, 2. un file.myd per i dati 3. un file.myi per gli indici 8 aprile

49 Engine: InnoDB Foreign Key: Le tabelle InnoDB sono in grado di gestire l integrità referenziale tra le chiavi esterne del database, permettendo di specificare vari comportamenti a seconda della chiave esterna utilizzata Transizioni: Permette di eseguire le query che verranno validate o annullate mediante chiamate COMMIT o ROLLBACK 8 aprile

50 Engine (II) Alcuni storage consentono di specificare il tipo di indice (struttura dati) durante la creazione delle tabella Bisogna usare la parola chiave USING type_name. Engine MySIAM InnoDB MEMORY/HEAP Type BTREE BTREE HASH, BTREE mysql> CREATE TABLE lookup ( id INT, INDEX USING BTREE (id)) ENGINE= MEMORY; 8 aprile

51 Tipi di tabelle Storage Engine BDB HEAP ISAM InnoDB MEMORY MERGE MRG_MyISAM MyISAM Descrizione Tabelle transaction-safe con page locking I dati della seguente tabella sono solamente memorizzati nella memoria principale Primo storage engine di MySQL Tabella transaction-safe con lock di righe e chiavi esterne Un alias di HEAP Una collezione di tabelle MyISAM usate come se fossero una singola tabella Alias di MERGE Storage engine binario portabile, evoluzione di ISAM 8 aprile

52 Engine: MyISAM vs InnoDB b-vs-myisam-vs-falcon-benchmarks-part-1/ 8 aprile

53 Tipi di dati: Numerici (1/2) Tipo Byte Minimum Value Maximum Value (Signed/Unsigned) TINYINT[(M)] 1-128/0 127/255 (Signed/Unsigned) SMALLINT[(M)] / /65535 MEDIUMINT[(M)] / / INT[(M)] / / BIGINT[(M)] / / FLOAT[(M)] 4 +/ E-38 +/ E+38 DOUBLE[(M)] 8 +/ E / E aprile

54 Tipi di dati: Numerici (2/2) INTEGER equivale a INT DOUBLE PRECISION equivale a DOUBLE REAL equivale a DOUBLE DECIMAL con M cifre di cui D decimali, occupa M+2 byte NUMERIC equivale a DECIMAL 8 aprile

55 Tipi di dati: Data e Tempo Tipo Range Byte DATE DATETIME :00: :59:59 8 TIMESTAMP[(M)] Da ad una data nel TIME -838:59:59-838:59:59 3 YEAR[(M)] 1901 al 2144 per YEAR(4) 1 8 aprile

56 Tipi di dati: Testo Tipo Max size Byte CHAR[(M)] M M VARCHAR(M) M L+1 TINYBLOB/ TINYTEXT 28-1 L+1 BLOB/TEXT L+2 MEDIUMBLOB/MEDIU MTEXT L+3 LONGBLOB/LONGTEXT L+4 ENUM( value1, value2, ) elementi 1 o 2 byte SET ( value1, value2, ) 64 elementi 1,2,3,4 o 8 byte L rappresenta la lunghezza effettiva del testo 8 aprile

57 Comandi (VI): gestione table 8 aprile

58 Comandi (VII): gestione table 8 aprile

59 Comandi (VIII): gestione table LOW_PRIORITY: l'inserimento non viene effettuato fino a quando esistonoclient che leggono sulla tabella interessata; DELAYED: anche in questo caso l'inserimento viene ritardato fino a quando la tabella non è libera. La differenza rispetto al caso precedente è che al client viene dato immediatamente l'ok, e le righe da inserire vengono mantenute in un buffer gestito dal server fino al momento della effettiva scrittura HIGH PRIORITY: annulla l'effetto di una eventuale opzione -- low-priority- IGNORE: permette di gestire eventuali errori che si verificano in fase di inserimento (chiavi duplicate o valori non validi) ON DUPLICATE KEY UPDATE: nel caso in cui si verifichi una chiave doppia, l'istruzione specificata viene eseguita sulla riga preesistente. 8 aprile

60 Comandi (IX): gestione table INSERT INTO `City` VALUES (1,'Kabul','AFG','Kabol', ); INSERT INTO `City` VALUES (2,'Qandahar','AFG','Qandahar',237500); INSERT INTO `City` VALUES (3,'Herat','AFG','Herat',186800); INSERT INTO `City` VALUES (4,'Mazar- e - Sharif','AFG','Balkh',127800); INSERT INTO `City` VALUES (5,'Amsterdam','NLD','Noord- Holland',731200); 8 aprile

61 Comandi (X): gestione table E possibile inserire i dati in un tabella anche leggendo le righe da file di testo con LOAD DATA INFILE 8 aprile

62 Comandi (XI): gestione table Le opzioni LOW_PRIORITY e IGNORE funzionano come per una INSERT L'opzione LOCAL specifica che il file da leggere si trova sulla macchina del client. Se si usa FIELDS è obbligatorio indicare almeno una delle opzioni che la compongono: TERMINATED BY indica quale stringa separa i campi; ENCLOSED BY indica i caratteri usati per racchiudere i valori; ESCAPED BY specifica il carattere di escape usato per i caratteri speciali (cioè quelli utilizzati nelle altre opzioni di FIELDS e LINES) 8 aprile

63 Comandi (XII): gestione table LINES può indicare le opzioni per le righe: STARTING BY indica una stringa che sarà omessa in ogni riga (può anche non trovarsi all'inizio della riga, nel qual caso sarà omesso tutto ciò che si trova prima). TERMINATED BY indica il carattere di fine riga mysql>load DATA INFILE test.txt INTO TABLE test LINES STARTING BY yyy ; Text.txt: yyy ROW,1 Blablabla yyy ROW,2 Carica: ( ROW,1), ( ROW ;2) IGNORE n LINES si usa per saltare le prime n righe del file di input 8 aprile

64 Comandi (XIII): Select 8 aprile

65 Comandi (XIV): Select SELECT seguita da una o più espressioni che saranno le colonne della tabella risultato; FROM seguita dai nomi di una o più tabelle dalle quali devono essere estratti i dati, per ogni tabella si può specificare un alias WHERE che specifica le condizioni in base alle quali ogni riga sarà estrattaoppure nodalletabelle GROUP BY che specifica le colonne sui cui valori devono essere raggruppate le righe nel risultato: tutte le righe con valori uguali verranno ridotte a una HAVING che specifica ulteriori condizioni da applicare alle righe dopo il raggruppamento effettuato dalla GROUP BY ORDER BY che specifica in quale ordine figureranno le righe del resultset LIMIT che stabilisce il massimo numero di righe da estrarre 8 aprile

66 Esempi: Query (I) 8 aprile

67 Esempi: Query (II) Quali sono i paesi (continente, regione, area) con popolazione > , in ordine crescente? 8 aprile

68 Esempi: Query (III) Quali lingue vengono parlate in China, in che percentuale? Usiamo gli alias per le tabelle 8 aprile

69 Esempi: Query (IV) Quali nomi di paesi contengono una w? % Match con qualsiasi numero di caratteri, anche zero. 8 aprile

70 Esempi: Query (V) Quali nomi di paesi contengono 14 caratteri? _ Match esattamente un carattere 8 aprile

71 Esempi: Query (VI) Una espressione regolare è un modo molto potente per specificare un pattern per una ricerca complessa expr REGEX pat: Esegue un pattern match tra una stringa di espressione expr contro un pattern pat Operatori: ^: match l inizio di una stringa $: match la fine di una stringa.: match qualsiasi carattere a*=a{0,}: match qualsiasi sequenza di zero o più caratteri a a+=a{1,}: match una sequenza di una o più caratteri a de abc: match della sequenza de o della sequenza abc (abc)*: match zero o più istanze della sequenza abc 8 aprile

72 Esempi: Query (VII) ^ match l inizio di una stringa Quali nomi dei paesi del Nord America iniziano per C? 8 aprile

73 Esempi: Query (VIII) $ match la fine di una stringa Quali nomi dei paesi dell Europa finiscono con ia? 8 aprile

74 Esempi: Query (IX). match qualsiasi carattere Quali Continente iniziano per A e quali nomi di paesi hanno 6 caratteri? 8 aprile

75 Esempi: Query (X) de abc Match o della sequenza de o della sequenza abc Quali nomi di paesi contengono tal o y? 8 aprile

76 Il valore NULL (I) In quale anno è stata conquistata l indipendenza? 8 aprile

77 Il valore NULL (II) Il valore NULL per un campo assume il seguente significato: mancante, sconosciuto infatti è trattato diversamente dagli altri valori. Per testare il valore di NULL non si possono usare i consueti operatori di confronto =,<, o <> Esempio: 8 aprile

78 Il valore NULL (III) Con l uso di IS NULL e IS NOT NULL si ottiene: Quando si usa ORDER BY i valori NULL sono inseriti all inizio con ASC ed alla fine con ORDER BY DESC. 8 aprile

79 Comandi (XV): UPDATE SET: specifichiamo quali colonne modificare e quali valori assegnare WHERE: le condizioni che determinano quali righe saranno modificate ORDER BY: per decidere in che ordine effettuare gli aggiornamenti LIMIT: per indicare il numero massimo di righe da modificare 8 aprile

80 Comandi (XVI): DELETE LOW_PRIORITY e IGNORE hanno il significato già visto. ORDER BY e LIMIT funzionano come nella UPDATE WHERE stabiliamo le condizioni in base alle quali le righe verranno eliminate 8 aprile

81 Comandi (XVII): Funzioni Input arg 1 arg 2 arg n Funzioni Elaborazione Valori dei Risultati Output 8 aprile

82 Comandi (XVIII): Funzioni Funzioni Funzioni Single-row Funzioni Multiple-row 8 aprile

83 Comandi (XIX): Funzioni Stringhe Generali Funzioni (Single-Row) Numeri Conversione Date 8 aprile

84 Aritmetici: +" (addizione) Operatori (I) "-" (sottrazione) "*" (moltiplicazione) "/" (divisione) "%" (modulo) 8 aprile

85 Operatori (II) Matematici: ABS(X) FLOOR(X) CEILING(X) SIN(X) COS(X) LN(X) LOG(X) LOG(B,X) Ect 8 aprile

86 Operatori (III) Logici: NOT(!) AND(&&) 8 aprile

87 Operatori (IV) OR( ) XOR 8 aprile

88 Operatori (V) Confronto, da come risultati 1 oppure 0: =, <>!=, <= < >=, > <=> (NULL-safe), IS NULL, IS NOT NULL 8 aprile

89 Operatori (VI) Se expr è più grande o uguale a min e expr è minore o oguale a max allora ritorna 1 altrimenti ritorna 0. expr BETWEEN min AND max expr NOT BETWEEN min AND max Equivalente a NOT (expr BETWEEN min AND max). 8 aprile

90 Operatori (VII) Ritorna 1 se expr è uguale a qualsiasi altro valore nella lista di IN altrimenti ritorna 0. expr IN (value,...) expr NOT IN (value,...) Equivalente a NOT (expr IN (value,...)). 8 aprile

91 Operatori (VIII) ISNULL(expr) COALESCE(list) Ritorna il primo elemento non-null nella lista: INTERVAL(N,N1,N2,N3,...) Ritorna 0 se N < N1, 1 se N < N2 ecc.o -1 se N è NULL. N1 < N2 < N3 <... < Nn 8 aprile

92 Operatori (IX) Controllo di flusso: sono utili quando vogliamo eseguire dei test sui valori contenuti in una tabella e decidere cosa estrarre in base al risultato. CASE: la prima versione ritorna result quando value=compare_value; la seconda ritorna result quando la condizione è true; 8 aprile

93 Operatori (X) IF: se expr1 è true ritorna expr2 altrimenti expr3; 8 aprile

94 Operatori (XI) IFNULL: Se expr1 è not null ritorna expr1 altrimenti expr2; 8 aprile

95 Operatori (XII) Funzioni su stringhe Funzioni Conversioni Case LOWER UPPER INITCAP Funzioni di Manipolazione Stringhe CONCAT SUBSTR LENGTH INSTR LPAD TRIM RIGHT 8 aprile

96 Operatori (XIII) Funzione conversioni case: LOWER (str) LCASE(str) UPPER (str) UCASE(str) 8 aprile

97 Operatori (XIV) Funzioni manipolazione stringhe: ASCII (str) : Ritorna il valore numerico del carattere più a sinistra di str BIN(N): Ritorna una stringa che rappresenta il valore binario di N 8 aprile

98 Operatori (XV) BIT_LENGHT(str): Ritorna la lunghezza della stringa str in bit CHAR (N,...) : interpreta ogni argomento N come intero e ritorna una stringa consistente dei caratteri dati dal codice numerico degli interi 8 aprile

99 Operatori (XVI) CHAR_LENGTH (str): ritorna la lunghezza della stringa misurata in caratteri. CHARACTER_LENGTH (str): sinonimo di char_length. CONCAT(str1,str2,...): ritorna la stringa che si ottiene concatenando gli argomenti. Ritorna NULL se un argomento è NULL 8 aprile

100 Operatori (XVII) CONCAT_WS (separator,str1,str2, ): Il primo argomento è il separatore il resto gli argomenti CONV (N,from_base,to_base): converte i numeri tra differenti basi. 8 aprile

101 Operatori (XVIII) ELT (N,str1,str2,str3, ): Ritorna str1 se N=1, str2 se N=2 ect FIELD (str,str1,str2,str3, ): Ritorna la posizione di str in str1,str2,ect 8 aprile

102 Operatori (XIX) FIND_IN_SET (str,strlist): Ritorna un valore nel range tra 1 a N se la stringa str è nella lista delle stringhe strlist consistente di N sottostringhe, separate da,. HEX(N_o_S): ritorna il valore esadecimale della stringa 8 aprile

103 Operatori (XX) INSERT (str, pos,len,newstr): Ritorna la stringa str con la substring alla posizione pos e per len caratteri di newstr. INSTR(str,substr): Ritorna la posizione della prima occorrenza della substr in str. 8 aprile

104 Operatori (XXI) LEFT(str,len): Ritorna i len caratteri più a sinistra di str; LENGTH(str): Ritorna la lunghezza della stringa str in bytes; 8 aprile

105 Operatori (XXII) LOCATE (substr,str)/(substr,str,pos): La prima sintassi ritorna la posizione delle prima occorrenza di substr in str, la seconda inizia la ricerca dalla posizione pos: LTRIM(str): Ritorna str con gli spazi iniziali rimossi: 8 aprile

106 Operatori (XXIII) REPEAT(str,count): Ritorna una stringa consistente della stringa str, ripetuta countvolte: REPLACE(str,from_str,to_str):Ritorna la stringa str con tutte le occorrenze della stringa from_str sostituite con to_str: 8 aprile

107 Operatori (XXIV) REVERSE(str): Ritorna la stringa invertita RIGHT(str,len): Ritorna i len caratteri più a destra di str RTRIM(str): Ritorna la stringa str con gli spazi finali rimossi 8 aprile

108 Operatori (XXV) STRCMP(expr1,expr2): Ritorna 0 (zero) se le due stringhe sono uguali, -1 se il primo argomento è più piccolo del secondo, 1 altrimenti. expr LIKE pat [ESCAPE escape_char ]: Ritorna 1 oppure 0 8 aprile 2012 mysql> SELECT 'David!' LIKE 'David_'; -> 1 mysql> SELECT 'David!' LIKE '%D%v%'; -> 1 mysql> SELECT 'David!' LIKE 'David\_'; -> 0 mysql> SELECT 'David_' LIKE 'David\_'; -> 1 108

109 Operatori (XXVI) MATCH (col1,col2, ) AGAINST (expr[in BOOLENA MODE WITH QUERY EXPANSION]): MATCH... AGAINST() è utilizzata per ricerche full text, ritorna la rilevanza tra il testo che si trova nelle colonne (col1,col2,...) e la query expr. La similarità è un valore positivo in virgola mobile. La funzione match esegue una ricerca in linguaggio naturale per una stringa contro un text collection che è rappresentato da una o più colonne incluse in un indice FULL TEXT 8 aprile

110 Full-Text Search (I) 8 aprile

111 Full-Text Search (II) La ricerca di default è insensitive 8 aprile

112 Full-Text Search (III) Mostriamo come recuperare il valore della rilevanza esplicitamente 8 aprile

113 Full-Text Search (IV) Recuperiamo il valore della rilevanza e ordiniamo le righe in maniera decrescente per farlo usiamo MATCH sia nella SELECT che nel WHERE. 8 aprile

114 Full-Text Search (V) E possibile eseguire una ricerca full-text in boolean mode, i segni + e indicano le parole che devono essere presente o assenti, rispettivamente per un match che occorre. 8 aprile

115 Full-Text Search (VI) A volte la stringa di ricerca è troppo corta e potrebbe tralasciare dei risultati significativi, è possibile utilizzare query expansion che in genere implica che una ricerca è correlata con unaconoscenza sottintesa Attenzione perché può aumentare il rumore dei risultati. 8 aprile

Introduzione a MySQL

Introduzione 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

Dettagli

Data Base. Master "Bio Info" Reti e Basi di Dati Lezione 6

Data 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

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

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

Introduzione a MySQL. Dott. Salvatore Alaimo. Studio 32 Blocco 2

Introduzione a MySQL. Dott. Salvatore Alaimo. Studio 32 Blocco 2 Introduzione a MySQL Dott. Salvatore Alaimo Studio 32 Blocco 2 Email: alaimos@dmi.unict.it Sommario Introduzione a MySQL Engine Tipi di Dati Installazione di MySQL Programmi Client Account e Privilegi

Dettagli

Indice generale. Capitolo 3 Introduzione a PHP...43 Sintassi e istruzioni di base... 45 Variabili, operatori e commenti... 47 Array...

Indice generale. Capitolo 3 Introduzione a PHP...43 Sintassi e istruzioni di base... 45 Variabili, operatori e commenti... 47 Array... Prefazione...xiii A chi si rivolge il libro... xiv Struttura e contenuti del libro... xiv Dove trovare aiuto... xvii Le newsletter di SitePoint... xviii I vostri commenti... xviii Convenzioni adottate

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

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

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

Laboratorio di Basi di Dati e Web

Laboratorio 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

Dettagli

Preparazione. Introduzione a MySQL: costruzione di una base di dati e gestione degli accessi. Accesso all area condivisa. Avvio Server MySQL

Preparazione. 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

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

I database relazionali (Access)

I database relazionali (Access) I database relazionali (Access) Filippo TROTTA 04/02/2013 1 Prof.Filippo TROTTA Definizioni Database Sistema di gestione di database (DBMS, Database Management System) Sistema di gestione di database relazionale

Dettagli

MySQL: principali comandi

MySQL: principali comandi MySQL: principali comandi Ing. Davide Vetrale Sommario Introduzione a MySQL e alle sue licenze Connessione/Disconnessione da un database MySQL Creazione utenti Programmi client SQL in MySQL DDL e DML Tipi

Dettagli

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

Dettagli

MySQL Database Management System

MySQL Database Management System MySQL Database Management System http://www.mysql.com/ DATABASE RELAZIONALI Un database è una collezione strutturata di informazioni. I database sono delle strutture nelle quali è possibile memorizzare

Dettagli

DBMS: MySQL CORSO DI BASI DI DATI 2014/2015

DBMS: 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

Dettagli

Corso sul linguaggio SQL

Corso 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

Dettagli

Volumi di riferimento

Volumi 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

Dettagli

Uso delle basi di dati DBMS. Cos è un database. DataBase. Esempi di database

Uso delle basi di dati DBMS. Cos è un database. DataBase. Esempi di database Uso delle basi di dati Uso delle Basi di Dati Il modulo richiede che il candidato comprenda il concetto di base dati (database) e dimostri di possedere competenza nel suo utilizzo. Cosa è un database,

Dettagli

User Tools: DataBase Manager

User Tools: DataBase Manager Spazio di lavoro Per usare T-SQL Assistant selezionare il link Simple Query e spostare a piacere la piccola finestra dove un menu a tendina mostra i diversi comandi SQL selezionabili, il pulsante Preview

Dettagli

Corso sul linguaggio SQL

Corso sul linguaggio SQL Corso sul linguaggio SQL Modulo L2B (SQL) 2.1 Comandi sui database 1 Prerequisiti Introduzione ai DB Linguaggi per database Tipi fondamentali di dati 2 1 Introduzione In questa Unità introduciamo il linguaggio

Dettagli

Appunti 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. 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

Dettagli

Dispensa di database Access

Dispensa di database Access Dispensa di database Access Indice: Database come tabelle; fogli di lavoro e tabelle...2 Database con più tabelle; relazioni tra tabelle...2 Motore di database, complessità di un database; concetto di

Dettagli

DBMS. Esempi di database. DataBase. Alcuni esempi di DBMS DBMS. (DataBase Management System)

DBMS. Esempi di database. DataBase. Alcuni esempi di DBMS DBMS. (DataBase Management System) (DataBase Management System) Sistemi di ges3one di basi di da3 Un Database Management System è un sistema software progettato per consentire la creazione e manipolazione efficiente di database (collezioni

Dettagli

Progettazione di Basi di Dati

Progettazione di Basi di Dati Progettazione di Basi di Dati Prof. Nicoletta D Alpaos & Prof. Andrea Borghesan Entità-Relazione Progettazione Logica 2 E il modo attraverso il quale i dati sono rappresentati : fa riferimento al modello

Dettagli

SQL SQL. Definizione dei dati. Domini. Esistono 6 domini elementari:

SQL SQL. Definizione dei dati. Domini. Esistono 6 domini elementari: SQL SQL (pronunciato anche come l inglese sequel: acronimo di Structured Query Language (linguaggio di interrogazione strutturato Linguaggio completo che presenta anche proprietà di: DDL (Data Definition

Dettagli

Laboratorio Progettazione Web PHP e MySQL - Lezione 9. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2012/2013

Laboratorio Progettazione Web PHP e MySQL - Lezione 9. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2012/2013 Laboratorio Progettazione Web PHP e MySQL - Lezione 9 Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2012/2013 Architettura di una applicazione Web Browser Web HTTP Server Web API Dati Presentation

Dettagli

Basi di Da( MySQL & MySQL Workbench. Anna Monreale

Basi di Da( MySQL & MySQL Workbench. Anna Monreale Basi di Da( MySQL & MySQL Workbench Anna Monreale MySQL MySQL è un DBMS gratuito ed open- source (h@p://www.mysql.com) MySQL può essere uilizzato in Windows, Linux, MacOS X. MySQL è un RDBMS (relaional

Dettagli

Al giorno d oggi, i sistemi per la gestione di database

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

Dettagli

Gestione delle tabelle

Gestione delle tabelle Linguaggio SQL: fondamenti Creazione di una tabella Modifica della struttura di una tabella Cancellazione di una tabella Dizionario dei dati Integrità dei dati 2 Creazione di una tabella (1/3) Si utilizza

Dettagli

Organizzazione degli archivi

Organizzazione degli archivi COSA E UN DATA-BASE (DB)? è l insieme di dati relativo ad un sistema informativo COSA CARATTERIZZA UN DB? la struttura dei dati le relazioni fra i dati I REQUISITI DI UN DB SONO: la ridondanza minima i

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

GERARCHIE RICORSIVE - SQL SERVER 2008

GERARCHIE RICORSIVE - SQL SERVER 2008 GERARCHIE RICORSIVE - SQL SERVER 2008 DISPENSE http://dbgroup.unimo.it/sia/gerarchiericorsive/ L obiettivo è quello di realizzare la tabella di navigazione tramite una query ricorsiva utilizzando SQL SERVER

Dettagli

Obiettivi d esame PHP Developer Fundamentals on MySQL Environment

Obiettivi d esame PHP Developer Fundamentals on MySQL Environment Obiettivi d esame PHP Developer Fundamentals on MySQL Environment 1.0 Ambiente di sviluppo 1.1 Web server e database MySQL Comprendere la definizione dei processi che si occupano di fornire i servizi web

Dettagli

Sistemi per la gestione di database: MySQL ( )

Sistemi per la gestione di database: MySQL ( ) Sistemi per la gestione di database: MySQL ( ) Relational Database e Relational Database Management System Un database è una raccolta di dati organizzata in modo da consentire l accesso, il reperimento

Dettagli

SQL. Laboratorio di Progettazione di Basi di Dati (CdS in Informatica e TPS)

SQL. 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 francesca.lisi@uniba.it

Dettagli

Richiesta pagina PHP (es: index.php)

Richiesta pagina PHP (es: index.php) PHP PHP = personal home page SERVER Richiesta pagina PHP (es: index.php) Server Web (Apache) in ascolto sulla porta 80, si accorge che la pagina richiesta è una pagina PHP in base all'estensione o con

Dettagli

Esercitazione sulle libpq - libreria C per PostgreSQL

Esercitazione 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

Dettagli

Introduzione all Information Retrieval

Introduzione all Information Retrieval Introduzione all Information Retrieval Argomenti della lezione Definizione di Information Retrieval. Information Retrieval vs Data Retrieval. Indicizzazione di collezioni e ricerca. Modelli per Information

Dettagli

Database Lezione 1. Sommario. - Introduzione - Tabelle e chiave primaria - Query - Calcoli ed alias - Ordinamento

Database Lezione 1. Sommario. - Introduzione - Tabelle e chiave primaria - Query - Calcoli ed alias - Ordinamento Sommario - Introduzione - Tabelle e chiave primaria - Query - Calcoli ed alias - Ordinamento Introduzione - Un database è un archivio strutturato di dati che può essere manipolato con dei comandi nel linguaggio

Dettagli

Laboratorio di Basi di Dati

Laboratorio 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

Dettagli

INDICI. Prevediamo di effettuare spesso interrogazioni simili alle seguenti:

INDICI. Prevediamo di effettuare spesso interrogazioni simili alle seguenti: Date le tabelle: Clienti := < id, nome, cognome, indirizzo,città > Ordini := < id, data_ora_ordine, id_prodotto, id_cliente, quantità> Prodotti := < id, nome, descrizione, costo,scorte > INDICI Prevediamo

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

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

TEORIA sulle BASI DI DATI

TEORIA sulle BASI DI DATI TEORIA sulle BASI DI DATI A cura del Prof. Enea Ferri Cos è un DATA BASE E un insieme di archivi legati tra loro da relazioni. Vengono memorizzati su memorie di massa come un unico insieme, e possono essere

Dettagli

Linguaggio SQL: fondamenti D B M G. Gestione delle tabelle

Linguaggio SQL: fondamenti D B M G. Gestione delle tabelle Linguaggio SQL: fondamenti Creazione di una tabella Modifica della struttura di una tabella Cancellazione di una tabella Dizionario dei dati Integrità dei dati 2 2007 Politecnico di Torino 1 Creazione

Dettagli

Esercitazione 1. Sistemi Informativi T. Versione elettronica: L01.2.DDLDMLbase.pdf

Esercitazione 1. Sistemi Informativi T. Versione elettronica: L01.2.DDLDMLbase.pdf Esercitazione 1 SQL: DDL e DML di base Sistemi Informativi T Versione elettronica: L01.2.DDLDMLbase.pdf Prime cose da fare Fare login sul PC usando lo username di Facoltà Procedura descritta qui: http://ccib.ing.unibo.it/content/account

Dettagli

Costruzione di Sit Web con PHP e MySQL. Lezione 7 - Esercitazione - Introduzione a MySQL: le tabelle, i tpi di dato, le query

Costruzione di Sit Web con PHP e MySQL. Lezione 7 - Esercitazione - Introduzione a MySQL: le tabelle, i tpi di dato, le query Costruzione di Sit Web con PHP e MySQL Lezione 7 - Esercitazione - Introduzione a MySQL: le tabelle, i tpi di dato, le query Esercitazione In questa lezione si farà insieme una seconda esercitazione che

Dettagli

Lezione V. Aula Multimediale - sabato 29/03/2008

Lezione V. Aula Multimediale - sabato 29/03/2008 Lezione V Aula Multimediale - sabato 29/03/2008 LAB utilizzo di MS Access Definire gli archivi utilizzando le regole di derivazione e descrivere le caratteristiche di ciascun archivio ASSOCIAZIONE (1:1)

Dettagli

DATABASE. www.andreavai.it

DATABASE. www.andreavai.it Cos'è un database? Quando si usa? Differenze con i fogli elettronici Le tabelle: record, campi, tipi di dati Chiavi e indici Database relazionali (R-DBMS) Relazioni uno-a-uno Relazioni uno-a-molti Relazioni

Dettagli

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

Dettagli

Introduzione alla programmazione in C

Introduzione alla programmazione in C Introduzione alla programmazione in C Testi Consigliati: A. Kelley & I. Pohl C didattica e programmazione B.W. Kernighan & D. M. Ritchie Linguaggio C P. Tosoratti Introduzione all informatica Materiale

Dettagli

PHP e Structured Query Language

PHP e Structured Query Language Esercitazioni del corso di Tecnologie per la Comunicazione Aziendale PHP e Structured Query Language Marco Loregian loregian@disco.unimib.it www.siti.disco.unimib.it/didattica/tca2008 Interrogazioni (ripasso)

Dettagli

Abilità Informatiche A.A. 2010/2011 Lezione 9: Query Maschere Report. Facoltà di Lingue e Letterature Straniere

Abilità Informatiche A.A. 2010/2011 Lezione 9: Query Maschere Report. Facoltà di Lingue e Letterature Straniere Abilità Informatiche A.A. 2010/2011 Lezione 9: Query Maschere Report Facoltà di Lingue e Letterature Straniere Le QUERY 2 Che cos è una Query? Una Query rappresenta uno strumento per interrogare un database.

Dettagli

Utilizzando Microsoft Access. Si crea la tabella Anagrafica degli alunni,le Materie e i voti si mettono alcuni campi

Utilizzando Microsoft Access. Si crea la tabella Anagrafica degli alunni,le Materie e i voti si mettono alcuni campi Vogliamo creare una struttura per permettere di memorizzari i voti della classe in tutte le materie Per fare questo untilizziamo tre tabelle Alunni,materie,voti Alunni Materie Voti Creo un record per ogni

Dettagli

Esercitazione: Il DBMS MySQL

Esercitazione: Il DBMS MySQL Laurea in Ingegneria Informatica SAPIENZA Università di Roma Insegnamento di Basi di Dati Esercitazione: Il DBMS MySQL Marco Console Aspetti Organizzativi Marco Console Sito: www.dis.uniroma1.it/~console

Dettagli

Corso di Access. Prerequisiti. Modulo L2A (Access) 1.1 Concetti di base. Utilizzo elementare del computer Concetti fondamentali di basi di dati

Corso di Access. Prerequisiti. Modulo L2A (Access) 1.1 Concetti di base. Utilizzo elementare del computer Concetti fondamentali di basi di dati Corso di Access Modulo L2A (Access) 1.1 Concetti di base 1 Prerequisiti Utilizzo elementare del computer Concetti fondamentali di basi di dati 2 1 Introduzione Un ambiente DBMS è un applicazione che consente

Dettagli

2104 volume III Programmazione

2104 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

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

Access. P a r t e p r i m a

Access. P a r t e p r i m a Access P a r t e p r i m a 1 Esempio di gestione di database con MS Access 2 Cosa è Access? Access e un DBMS che permette di progettare e utilizzare DB relazionali Un DB Access e basato sui concetti di

Dettagli

I comandi del linguaggio DDL (Data Definition Language): CREATE E ALTER

I comandi del linguaggio DDL (Data Definition Language): CREATE E ALTER Caratteristiche generali del linguaggio SQL Il linguaggio SQL è il linguaggio usato per la gestione dei database relazionali, cioè dei database creati con un DBMS di tipo relazionale. Esso nacque nella

Dettagli

INFORMATICA. Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE.

INFORMATICA. Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE. INFORMATICA Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE. APPLICAZIONI WEB L architettura di riferimento è quella ampiamente diffusa ed

Dettagli

RELAZIONE PROGETTO DATABASE GESTIONE BIBLIOTECA PERSONALE

RELAZIONE PROGETTO DATABASE GESTIONE BIBLIOTECA PERSONALE RELAZIONE PROGETTO DATABASE GESTIONE BIBLIOTECA PERSONALE Mameli Salvatore-M01/000153 SOMMARIO 1 INTRODUZIONE 1.1 Project Overview 1.2 Ambiente del prodotto 1.3 Document Overview 2 - PROGETTAZIONE 2.1

Dettagli

Informatica Generale Andrea Corradini. 19 - Sistemi di Gestione delle Basi di Dati

Informatica Generale Andrea Corradini. 19 - Sistemi di Gestione delle Basi di Dati Informatica Generale Andrea Corradini 19 - Sistemi di Gestione delle Basi di Dati Sommario Concetti base di Basi di Dati Il modello relazionale Relazioni e operazioni su relazioni Il linguaggio SQL Integrità

Dettagli

Informatica. Rappresentazione dei numeri Numerazione binaria

Informatica. Rappresentazione dei numeri Numerazione binaria Informatica Rappresentazione dei numeri Numerazione binaria Sistemi di numerazione Non posizionali: numerazione romana Posizionali: viene associato un peso a ciascuna posizione all interno della rappresentazione

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

Le Basi di Dati. Le Basi di Dati

Le Basi di Dati. Le Basi di Dati Le Basi di Dati 20/05/02 Prof. Carlo Blundo 1 Le Basi di Dati Le Base di Dati (database) sono un insieme di tabelle di dati strutturate in maniera da favorire la ricerca di informazioni specializzate per

Dettagli

Informatica per le discipline umanistiche 2 lezione 10

Informatica per le discipline umanistiche 2 lezione 10 Informatica per le discipline umanistiche 2 lezione 10 Parte III: il computer come strumento per l interazione e la comunicazione Si è parlato di identità Parte III: il computer come strumento per l interazione

Dettagli

MySQL Database Management System

MySQL Database Management System MySQL Database Management System II parte Progetto gestione booking prenotazioni on-line 1. Progettazione e creazione struttura database che chiameremo booking. 2. Progettazione e creazione di un form

Dettagli

MySQL Command Line Client: operazioni fondamentali

MySQL 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

Dettagli

OSSIF WEB. Manuale query builder

OSSIF WEB. Manuale query builder OSSIF WEB Manuale query builder - Maggio 2010 1) Sommario 1) SOMMARIO... 2 INTRODUZIONE... 3 Scopo del documento... 3 Struttura del documento... 3 Descrizione dell interfaccia grafica... 3 SELEZIONE DI

Dettagli

SQL/OLAP. Estensioni OLAP in SQL

SQL/OLAP. Estensioni OLAP in SQL SQL/OLAP Estensioni OLAP in SQL 1 Definizione e calcolo delle misure Definire una misura significa specificare gli operatori di aggregazione rispetto a tutte le dimensioni del fatto Ipotesi: per ogni misura,

Dettagli

Corso di Informatica Generale 1 IN1. Linguaggio SQL

Corso 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:

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

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

Il database management system Access

Il database management system Access Il database management system Access Corso di autoistruzione http://www.manualipc.it/manuali/ corso/manuali.php? idcap=00&idman=17&size=12&sid= INTRODUZIONE Il concetto di base di dati, database o archivio

Dettagli

ESEMPI DI QUERY SQL. Esempi di Query SQL Michele Batocchi AS 2012/2013 Pagina 1 di 7

ESEMPI DI QUERY SQL. Esempi di Query SQL Michele Batocchi AS 2012/2013 Pagina 1 di 7 ESEMPI DI QUERY SQL Dati di esempio... 2 Query su una sola tabella... 2 Esempio 1 (Ordinamento)... 2 Esempio 2 (Scelta di alcune colonne)... 3 Esempio 3 (Condizioni sui dati)... 3 Esempio 4 (Condizioni

Dettagli

19. LA PROGRAMMAZIONE LATO SERVER

19. LA PROGRAMMAZIONE LATO SERVER 19. LA PROGRAMMAZIONE LATO SERVER Introduciamo uno pseudocodice lato server che chiameremo Pserv che utilizzeremo come al solito per introdurre le problematiche da affrontare, indipendentemente dagli specifici

Dettagli

Operazioni sui database

Operazioni sui database Operazioni sui database Le operazioni nel modello relazionale sono essenzialmente di due tipi: Operazioni di modifica della base di dati (update) Interrogazioni della base di dati per il recupero delle

Dettagli

Esercitazione PAM. (Php Apache MySQL)

Esercitazione PAM. (Php Apache MySQL) Prerequisiti: Esercitazione PAM (Php Apache MySQL) Installazione del server Apache: avvenuta; Installazione del server Php: avvenuta; Sincronizzazione dei due server: avvenuta. Abstract: L esercitazione

Dettagli

DESIGNAZIONE: Rappresenta una relazione tra due entità di tipo 1 ad M. Esempio tipico è : REPARTO ------- IMPIEGATO

DESIGNAZIONE: Rappresenta una relazione tra due entità di tipo 1 ad M. Esempio tipico è : REPARTO ------- IMPIEGATO DESIGNAZIONE: Rappresenta una relazione tra due entità di tipo 1 ad M. Esempio tipico è : REPARTO ------- IMPIEGATO (designata) (designante) Viene rappresentata inserendo, nella tabella dell entità designante,

Dettagli

Riccardo Dutto, Paolo Garza Politecnico di Torino. Riccardo Dutto, Paolo Garza Politecnico di Torino

Riccardo Dutto, Paolo Garza Politecnico di Torino. Riccardo Dutto, Paolo Garza Politecnico di Torino Integration Services Project SQL Server 2005 Integration Services Permette di gestire tutti i processi di ETL Basato sui progetti di Business Intelligence di tipo Integration services Project SQL Server

Dettagli

LA GESTIONE DELLE VISITE CLIENTI VIA WEB

LA GESTIONE DELLE VISITE CLIENTI VIA WEB LA GESTIONE DELLE VISITE CLIENTI VIA WEB L applicazione realizzata ha lo scopo di consentire agli agenti l inserimento via web dei dati relativi alle visite effettuate alla clientela. I requisiti informatici

Dettagli

Regione Toscana. ARPA Fonte Dati. Manuale Amministratore. L. Folchi (TAI) Redatto da

Regione Toscana. ARPA Fonte Dati. Manuale Amministratore. L. Folchi (TAI) Redatto da ARPA Fonte Dati Regione Toscana Redatto da L. Folchi (TAI) Rivisto da Approvato da Versione 1.0 Data emissione 06/08/13 Stato DRAFT 1 Versione Data Descrizione 1,0 06/08/13 Versione Iniziale 2 Sommario

Dettagli

Concetti fondamentali dei database database Cos'è un database Principali database

Concetti fondamentali dei database database Cos'è un database Principali database Concetti fondamentali dei database Nella vita di tutti i giorni si ha la necessità di gestire e manipolare dati. Le operazioni possono essere molteplici: ricerca, aggregazione con altri e riorganizzazione

Dettagli

Manuale Amministratore Legalmail Enterprise. Manuale ad uso degli Amministratori del Servizio Legalmail Enterprise

Manuale Amministratore Legalmail Enterprise. Manuale ad uso degli Amministratori del Servizio Legalmail Enterprise Manuale Amministratore Legalmail Enterprise Manuale ad uso degli Amministratori del Servizio Legalmail Enterprise Pagina 2 di 16 Manuale Amministratore Legalmail Enterprise Introduzione a Legalmail Enterprise...3

Dettagli

Istruzioni SQL 1. Query di selezione 2 Istruzione SELECT 2 Istruzione SELECT DISTINCT 2 ORDER BY 3 WHERE 3 La condizione LIKE 4 BETWEEN AND 5

Istruzioni SQL 1. Query di selezione 2 Istruzione SELECT 2 Istruzione SELECT DISTINCT 2 ORDER BY 3 WHERE 3 La condizione LIKE 4 BETWEEN AND 5 Istruzioni SQL Istruzioni SQL 1 Query di selezione 2 Istruzione SELECT 2 Istruzione SELECT DISTINCT 2 ORDER BY 3 WHERE 3 La condizione LIKE 4 BETWEEN AND 5 Query di inserimento 5 INSERT INTO 5 Query di

Dettagli

Excel. A cura di Luigi Labonia. e-mail: luigi.lab@libero.it

Excel. A cura di Luigi Labonia. e-mail: luigi.lab@libero.it Excel A cura di Luigi Labonia e-mail: luigi.lab@libero.it Introduzione Un foglio elettronico è un applicazione comunemente usata per bilanci, previsioni ed altri compiti tipici del campo amministrativo

Dettagli

Università degli Studi di Catania Dipartimento di Matematica e Informatica Compilatori 2014/15

Università degli Studi di Catania Dipartimento di Matematica e Informatica Compilatori 2014/15 Università degli Studi di Catania Dipartimento di Matematica e Informatica Compilatori 2014/15 Cristina Parasiliti Parracello, Dario Safarally, Roberta Maccarrone Mail Parser Introduzione Il presente documento

Dettagli

ISTRUZIONI INSTALLAZIONE PMANGO

ISTRUZIONI INSTALLAZIONE PMANGO ISTRUZIONI INSTALLAZIONE PMANGO Software necessario: PMango richiede un Web server funzionante con PHP e MySQL e un Web browser. Web server: Apache almeno alla versione 2.0.52 (www.apache.org) PHP: consigliata

Dettagli

ECDL - Database. European Computer Driving Licence - Modulo 5 - Database LEZIONE 2

ECDL - Database. European Computer Driving Licence - Modulo 5 - Database LEZIONE 2 ECDL - Database European Computer Driving Licence - Modulo 5 - Database LEZIONE 2 Ripasso Introduzione - Ripasso Cosa si intende per dbms? e cosa per database? Quali sono gli elementi che lo compongono?

Dettagli

MODELLO RELAZIONALE. Introduzione

MODELLO RELAZIONALE. Introduzione MODELLO RELAZIONALE Introduzione E' stato proposto agli inizi degli anni 70 da Codd finalizzato alla realizzazione dell indipendenza dei dati, unisce concetti derivati dalla teoria degli insiemi (relazioni)

Dettagli

Esercitazione di riepilogo sulle Query MySQL Giugno 2011 Classe VB Informatica

Esercitazione di riepilogo sulle Query MySQL Giugno 2011 Classe VB Informatica Istituto di Istruzione Superiore Alessandrini - Marino 1 Esercitazione di riepilogo sulle Query MySQL Giugno 2011 Classe VB Informatica Descrizione Un azienda commerciale che vende prodotti IT (computers,

Dettagli

Introduzione ai database relazionali

Introduzione ai database relazionali Introduzione ai database relazionali Tabelle Un database (DB) è costituito da un insieme di file che memorizzano dati opportunamente organizzati Nei database relazionale tale organizzazione è costituita

Dettagli

Archivi e Basi di Dati

Archivi 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

Dettagli

Corso di Informatica (Basi di Dati)

Corso di Informatica (Basi di Dati) Corso di Informatica (Basi di Dati) Lezione 6 (15 gennaio 2009) Linguaggio SQL: Data Definition Language (DDL) Da: Atzeni, Ceri, Paraboschi, Torlone - Basi di Dati Lucidi del Corso di Basi di Dati 1, Prof.

Dettagli

Lezione 6: Form 27/04/2012

Lezione 6: Form 27/04/2012 Lezione 6: Form In alcuni documenti HTML può essere utile creare dei moduli (form) che possono essere riempiti da chi consulta le pagine stesse (es. per registrarsi ad un sito). Le informazioni sono poi

Dettagli

SQL. Alcune note sulla definizione dei dati

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

Dettagli

Introduzione a phpmyadmin

Introduzione a phpmyadmin Introduzione a phpmyadmin http://www.phpmyadmin.net Per chiarimenti, http://www.ing.unibs.it/~alberto.lazzaroni 1 phpmyadmin: cosa è, a cosa serve È un software di amministrazione di database MySql (MySql

Dettagli