P. 1
SQL m2 Mysql

SQL m2 Mysql

|Views: 107|Likes:
Published by Cinzia Bocchi

More info:

Published by: Cinzia Bocchi on Dec 08, 2012
Copyright:Attribution Non-commercial Share Alike

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

08/19/2015

pdf

text

original

Implementazioni SQL: MySQL

MySQL è RDBMS, composto da un client con interfaccia a caratteri e un server, entrambi disponibili sia per sistemi Unix come GNU/Linux sia per Windows. Si tratta di un prodotto software free ed è pertanto scaricabile gratuitamente dal sito http://www.mysql.it/. Il sito http://dev.mysql.com/ è dedicato agli sviluppatori e contiene istruzioni per l’installazione sulle diverse piattaforme supportate (Windows, Linux, Mac OS X, ...), tutorial, la documentazione MySQL e ulteriori risorse. L’installazione su piattaforma Windows è resa più semplice grazie ad un installer scaricabile all’url http://dev.mysql.com/downloads/installer/.

Strumenti di amministrazione
MySQL non fornisce un’interfaccia grafica ma è possibile utilizzare un MySQL Manager, ossia uno strumento che fornisce un’interfaccia grafica per svolgere operazioni di amministrazione dei database, gestire le tabelle e i dati, effettuare interrogazioni. Il MySQL Manager più usato è probabilmente phpMyAdmin, multipiattaforma, scritto in PHP e distribuito con licenza GPL (http://www.phpmyadmin.net/home_page/index.php). Il software phpMyAdmin necessita, per funzionare, che siano installati anche il server web Apache (http://www.apache.org/) e l’interprete PHP (http://www.php.net/), oltre naturalmente MySQL. Dopo l’installazione è necessario configurare i vari applicativi affinché siano in grado di cooperare. Se non si è esperti o se si vuole velocizzare l’installazione, si possono usare pacchetti preconfezionati, che installano e configurano automaticamente tutto il software necessario. Ne esistono diversi e di seguito ne propongo alcuni: XAMPP (http://www.apachefriends.org/it/xampp.html) Distribuzione Apache contenente MySQL, PHP e Perl. Utilizzabile per Linux, Windows, Mac OS X, Solaris.

WampServer (http://www.wampserver.com/en/) Installa un ambiente WAMP costituito da Apache, PHP e MySQL. Utilizzabile solo per Windows.

EasyPHP (http://www.easyphp.org/) Come WampServer.

MAMP (http://www.mamp.info/en/mamp/index.html) Installa un ambiente MAMP costituito da Apache, PHP e MySQL. Utilizzabile solo per Mac OS X.

Particolarmente interessante è MySQL Workbench, uno strumento visuale di progettazione per database, che integra sviluppo SQL, gestione, modellazione dati, creazione e manutenzione di database MySQL all'interno di un unico ambiente. Lo strumento è gratuito e scaricabile all’url http://www.mysql.com/downloads/workbench/.

Bocchi Cinzia Ultimo aggiornamento: 14/09/2012

1

Tipi di dato in MySQL
La tabella seguente mostra la corrispondenza tra alcuni tipi MySQL e i tipi standard SQL.

Numerici Descrizione Una sequenza di bit di lunghezza x. Intero a 16 bit. Intero a 32 bit. Intero a 64 bit. Floating point a 32 bit. Floating point a 64 bit di precisione p e scala s. Fixed point di precisione p e scala s, con p < 66 e s <31. Floating point a 32 bit di precisione p e scala s. SQL bit(x) smallint integer real double precision decimal(p,s) float(p)

MySQL bit(x) smallint(p) int(p) o integer(p) bigint(p) double(p,s) decimal(p,s) float(p,s)

Altri tipi numerici SQL sono:  tinyint(p) Intero a 8 bit e precisione p. Se p vale 1 equivale al tipo boolean, con 0 pari a false e 1 a true.  mediumint(p) Intero a 24 bit e precisione p.  bigint(p) Intero a 64 bit e precisione p.

Alfanumerici Descrizione Stringa di lunghezza n. Se la stringa ha lunghezza inferiore a n vengono aggiunti spazi alla sua destra, fino ad arrivare alla lunghezza desiderata. Stringa di lunghezza massima n. Se la stringa ha lunghezza inferiore a n non vengono aggiunti spazi alla sua destra. SQL char(n) varchar(n)

MySQL char(n) varchar(n)

Altri tipi alfanumerici SQL sono:  blob Stringa di lunghezza massima 65 535 byte.  tinyblob Stringa di lunghezza massima 255 byte.  mediumblob Stringa di lunghezza massima 16 777 215 byte.  longblob Stringa di lunghezza massima 4 294 967 295 byte.  text Stringa di lunghezza massima 65 535 caratteri.  tinytext Stringa di lunghezza massima 255 caratteri.  mediumtext
Bocchi Cinzia Ultimo aggiornamento: 14/09/2012

2

Stringa di lunghezza massima 16 777 215 caratteri.  longtext Stringa di lunghezza massima 4 294 967 295 caratteri.  enum(‘valore1’,’valore2’,...) Stringa che può assumere uno solo dei valori specificati.  set(‘valore1’,’valore2’,...) Stringa che può assumere zero o più valori fra quelli specificati.

Data e ora Descrizione Data espressa nel formato aaa-mm-gg. Ora espressa nel formato hh:mm:ss. Numero di secondi trascorsi dalle ore 00:00:00 del 1970-01-01. SQL date time timestamp

MySQL date time timestamp

Altri tipi data e ora SQL sono:  datetime Combina data e ora.  year(d) specifica l’anno in un formato dipendente da d, che può valere 2 o 4 (il default è 4).

Funzioni e operatori
All’url http://dev.mysql.com/doc/refman/5.5/en/func-op-summary-ref.html sono reperibili le funzioni e gli operatori utilizzabili in MySQL. La tabella seguente riporta alcuni funzioni utilizzabili con i tipi data e ora. Operatore/funzione Sintassi
CURDATE CURTIME DATE_ADD CURDATE() CURTIME() DATE_ADD(data,INTERVAL exp unit)

Descrizione
Restituisce la data corrente. Restituisce l’ora corrente. Aggiunge a data l’intervallo specificato. I valori possibili di exp e unit sono rappresentati nella figura 1. - Esempio: DATE_ADD('2012-07-19',INTERVAL 5 DAY) restituisce 2012-07-24 - Esempio: DATE_ADD('2012-07-19',INTERVAL -5 DAY) restituisce 2012-07-14 Sottrae a data l’intervallo specificato. I valori possibili di exp e unit sono rappresentati nella figura 1. Restituisce il numero di giorni che intercorrono tra data1 e data2 (data1-data2). - Esempio: DATEDIFF('2012-12-31','2012-12-30') restituisce 1 - Esempio: DATEDIFF('2012-11-30','2012-12-31') restituisce -31 Estrae da data la unit specificata (vedere figura 1). - Esempio: EXTRACT(YEAR FROM,'2012-12-31') restituisce 2012 3

DATE_SUB DATEDIFF

DATE_SUB(data,INTERVAL exp unit) DATEDIFF(data1,data2)

EXTRACT

EXTRACT(unit FROM data)

Bocchi Cinzia Ultimo aggiornamento: 14/09/2012

Figura 1 - Valori di exp e unit

Quest'opera è stata rilasciata con licenza Creative Commons Attribution-ShareAlike 3.0 Unported. Per leggere una copia della licenza visita il sito web http://creativecommons.org/licenses/by-sa/3.0/ o spedisci una lettera a Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA. 4

Bocchi Cinzia Ultimo aggiornamento: 14/09/2012

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->