Guida ai comandi Mysql Modifica la struttura di una tabella. Ha due clausole: Alter Table ADD: aggiunge una colonna alla tabella, la sintassi è: “ALTER TABLE Tabella ADD NuovaColonna Char(1)” Char(1) è il tipo della colonna. Si può aggiungere anche INIT dopo il Char(1) per inizializzare la colonna. MODIFY: modifica le caratteristiche di una determinata colonna. La sintassi è: ALTER TABLE Tabella MODIFY NuovaColonna ASCII Char(1); Restituisce il valore ASCII di un carattere. Sintassi: ATAN ASCII(‘a’); Calcola l’arcotangente del valore tra parentesi; Sintassi: AVG SELECT ATAN(valore); Da usare in combinazione con il SELECT restituisce il valore medio di una colonna specificata tra parentesi. Sintassi: Between SELECT AVG(Campo1) FROM tabella; Inserito in un SELECT vede se il valore di un campo è contenuto in un determinato range. Esempio: CEILING SELECT * FROM tabella WHERE campo BETWEEN A And Z; Restituisce il valore integer minore che risulta maggiore o uguale all'espressione numerica specificata. Sintassi: CEILING(valore); Esempio: SELECT CEILING(123.45), CEILING($-123.45); Commit CONCAT COS COT Count Restituirà 124.00 e -123.00 Rende permanenti tutti gli eventuali aggiornamenti effettuati prima della scrittura di questo comando e naturalmente anche quelli successivi. La sintassi è molto semplice: COMMIT; Concatena due stringhe. Sintassi: CONCAT (stringa1, stringa2); Funzione matematica che restituisce il coseno di un valore. Sintassi: COS(valore) Funzione matematica che restituisce la cotangente trigonometrica in radianti dell'angolo indicato nell'espressione float specificata. Sintassi: COT(valore); Conta i record della tabella. Esempio: SELECT COUNT(*) FROM tabella; Oppure SELECT COUNT(*) FROM tabella WHERE <condizione>; create database Crea un database. La sintassi è: Create table CREATE DATABASE nome_database; Crea una tabella. Esempio: CREATE TABLE tabella(var1 char(15) not null, var2 char(20) not null); Delete Crea una tabella con due campi di nome var1 con una lunghezza di massimo 15 caratteri e var2 con una lunghezza massima di 20 caratteri; entrambi devono essere non nulli. Elimina uno o più record da una tabella. Sintassi: Delete * FROM tabella WHERE <condizione>; Esempio: DEScribe Delete * FROM tabella WHERE id=1; Fornisce la descrizione di una tabella, fornendo informazioni come i nomi dei campi ed altre notizie utili. Sintassi: Distinct DESCRIBE nometabella; Viene usato per selezionare i campi da un database escludendo i suoi duplicati. Esempio: SELECT DISTINCT campo FROM tabella; Oppure è usato in combinazione col Count per evitare di contare due volte i campi duplicati: Esempio: Drop Table SELECT COUNT(DISTINCT campo) As varConta FROM tabella; Cancella una tabella. Esempio: floor Grant Drop Table tabella; Restituisce il valore integer maggiore che risulta minore o uguale all'espressione numerica specificata. Sintassi: FLOOR(valore); Esempio: SELECT FLOOR(123.45), FLOOR(-123.45); Restituirà nell’ordine 123 e -124. Autorizza un utente ad accedere al nostro database. Sintassi: GRANT <tipo autorizzazione> ON <oggetto del database a cui si riferisce l’autorizzazione> TO <nome utente che si autorizza> Esempio: GROUP BY GRANT SELECT ON tabella TO utente; Da usare in combinazione con il SELECT raggruppa le voci in base a uno o più campi da noi decisi. Sintassi: SELECT * FROM tabella GROUP BY campo1…campoN; In questo esempio invece lo combineremo con il COUNT, in modo da contare quanti record fanno parte del gruppo. SELECT COUNT(*) FROM tabella GROUP BY campo1…campoN; Ma nella voce di sopra noterete la mancanza di qualcosa, quindi sarebbe meglio fare: SELECT campo1, campo2, campoN, COUNT(*) FROM tabella GROUP BY campo1…campoN; In In questo modo oltre a sapere quanti record ci sono con quelle caratteristiche, di fianco avremo anche il campo considerato. Seleziona dei record che hanno dei valori specificati in un campo. Esempio: Insert Into SELECT * FROM tabella WHERE campo IN ('valore1', 'valore2'); Inserisce dei dati in una tabella. Lo inserisce in coda alla tabella. Esempio: Insert Into user (a, b, 11); ‘se si inseriscono tutti i campi. ‘oppure Intersect INSERT INTO tabella(campo1, campo2) VALUES (val_campo1, val_campo2); ‘inserisce solo nei campi specificati Se connettiamo due comandi SELECT con un INTERSECT otterremo gli elementi che sono presenti in un tutti i SELECT in questione. Esempio: left SELECT FROM tabella WHERE a = 3 INTERSECT SELECT FROM tabella2 WHERE b = 5; Restituisce una parte della stringa partendo da sinistra. Vedere anche RIGHT e SUBSTRING. Sintassi: LEFT(stringa,numero_caratteri); Esempio: length SELECT LEFT(‘prova’,3); restituirà ‘pro’. Restituisce la lunghezza di una stringa. Sintassi: LENGHT(stringa); Esempio: SELECT LENGHT(‘prova’); restituirà 5. Se per esempio vogliamo selezionare tutti i record che hanno Campo1 di lunghezza maggiore o uguale a 3 faremo: LIKE SELECT (*) FROM tabella WHERE LENGHT(Campo1) >= 3; E’ una condizione del WHERE. Seleziona dei dati da un database dove il campo è simile ad uno da noi specificato. Il carattere jolly per indicare infiniti caratteri è il simbolo di percento (%), mentre il carattere jolly all’interno della stringa è l’underscore (_). Il primo esempio troverà ad esempio panettone, panettiere, appannato, mentre il secondo esempio troverà pala, para, paca, etc… Primo esempio: SELECT * FROM tabella WHERE campo LIKE ’%pan%’; Secondo esempio: SELECT * FROM tabella WHERE campo LIKE ’pa_a’; LOG E LOG10 Restituisce il logaritmo di un numero (LOG10 lo stesso, ma in base 10). Sintassi: LOG(valore): Lower LOG10(valore); Riduce in minuscolo tutti i caratteri di una stringa. Sintassi: LOWER(stringa); Esempio: SELECT LOWER(‘PROVA’); ltrim restituirà: prova. Elimina gli spazi a sinistra di una stringa. Vedere anche RTRIM e TRIM. Sintassi: LTRIM(stringa): Esempio: Min e Max SELECT LTRIM(‘ stringa di prova ’); darà come risultato: ‘stringa di prova ’ Seleziona il minimo o il massimo da un database. Queste funzioni possono anche essere usate con stringhe e non solo con valori numerici come si potrebbe pensare. Esempio: SELECT Min(campo) FROM tabella; ‘il minimo SELECT Max(campo) FROM tabella; ‘il massimo Minus Se connettiamo due comandi SELECT con un MINUS otterremo gli elementi che sono presenti nel primo SELECT, ma non nel secondo. Esempio: mod SELECT FROM tabella WHERE a = 3 MINUS SELECT FROM tabella2 WHERE b = 5; Restituisce il resto della divisione tra due valori. Sintassi: MOD(5,2); Esempio: Order By SELECT MOD(5,2); darà come risultato 1. Ordina in ordine crescente (ASC) o decrescente (DESC) i dati contenuti in un un Select. Esempio: SELECT * FROM tabella Order By campo ASC; ‘ordine crescente PI SELECT * FROM tabella Order By campo DESC; ‘ordine decrescente Restituisce il valore di pigreco con 6 decimali. Sintassi: power PI(); Restituisce un valore dato in input elevato ad un determinata potenza. Sintassi POWER(valore,potenza); Esempio: SELECT POWER(3,2); radians Restituisce 9. Converte un valore da gradi in radianti. Sintassi: RAND Replace RADIANS(valore); Genera un numero casuale di tipo float in base al valore inserito tra parentesi compreso tra 0 e 1. Sostituisce una serie di caratteri da una stringa con degli altri caratteri. Sintassi: REPLACE(stringa,carattere_da_trovare,sostituto); Esempio: SELECT (‘prova’,’ov’, ‘a’); reverse Restituirà ‘praa’. Restituisce la stringa scritta al contrario. Sintasi: REPLACE(stringa); Esempio: SELECT REPLACE(‘stringa di prova’); Revoke Restituirà: ‘avorp id agnirts’ Revoca una autorizzazione concessa con GRANT. REVOKE <tipo autorizzazione> ON <oggetto del database a cui si riferisce l’autorizzazione> TO <nome utente che si autorizza> Esempio: right REVOKE SELECT ON tabella TO utente; Restituisce una parte della stringa partendo da destra. Vedere anche LEFT e SUBSTRING. Sintassi: RIGHT(stringa,numero_caratteri); Esempio: Rollback SELECT RIGHT(‘prova’,3); restituirà ‘ova’. Annulla tutte le modifiche fissate tramite il COMMIT. Esempio: round REVOKE; Restituisce il valore arrotondato con un certo numero di decimali. Sintassi: ROUND(valore, numero_decimali); Esempio: SELECT ROUND(3.444245,2); Restituirà 3.44 SELECT ROUND(3.5154654,2); RTRIM Restituirà 3.52 Elimina gli spazi a destra di una stringa. Vedere anche LTRIM e TRIM. Sintassi: RTRIM(stringa): Esempio: select SELECT RTRIM(‘ stringa di prova ’); darà come risultato: ‘ stringa di prova‘ Il SELECT è uno dei comandi fondamentali dell’SQL. Tramite questo noi possiamo selezionare delle voci dal nostro database creandoci un insieme di record detto recordset. La sintassi è la seguente: SELECT (Campo1, Campo2, … , Campo3) FROM tabella; Se vogliamo selezionare tutti i campi scriveremo: SELECT (*) FROM tabella; Il carattere asterisco [*] è detto widecard è viene usato per indicare tutti i campi. Questo metodo risulta più lento perché sarà il computer a dover calcolare quali campi prendere e risulta inutile se ci serve un solo campo, ma nel caso in cui ci servano tutti i campi o quasi ci risulta molto rapido nella scrittura e quindi conveniente. Se vogliamo solo alcuni campi specificati dovremmo ricorrere a WHERE; questo ci permetterà di specificare un valore in base al quale selezioneremo i campi da prendere. Sintassi: SELECT (*) FROM tabella WHERE Campo1 = ‘valorediprova’; SHOW Per altre informazioni a riguardo vedete anche il LIKE su questo tutorial. Visualizza alcune informazioni sull’argomento specificato. I possibili argomenti sono: GRANTS, visualizza i permessi; TABLE STATUS, visualzza alcune informazioni sullo stato delle tabelle; STATUS, visualizza delle informazioni sullo stato del server; VARIABLES, visualizza le i variabile e i valori del Server; Sin LOGS, visualizza i logs; PROCESSLIST, visualizza i processi in esecuzione. Per terminare un processo bisogna scrivere KILL seguito dall’identificativo del processo (ID). Restituisce il seno di un valore espresso in radianti. Sintassi: SQRT SIN(valore); Esegue la radice quadrata di un valore. Sintassi: STD substring SQRT(valore); Esegue la deviazione statistica standard su tutti i valori dell'espressione. Sintassi: SELECT STD(Campo1) FROM tabella; Seleziona un determinato numero di caratteri a partire da qualsiasi punto della stringa . Vedere anche RIGHT e LEFT. Sintassi: SUBSTRING(stringa,numero_carattere_d’inizio,numero_caratteri); Esempio: SUM tan SELECT SUBSTRING(‘prova’,2,3); restituirà ‘rov’. Esegue la somma di tutti gli elementi del recordset. E’ da usare in combinazione col SELECT. Sintassi: SELECT SUM(Campo1) FROM tabella; Restituisce la tangente di una espressione. Sintassi TRIM TAN(valore); Elimina gli spazi a sinistra e a destra di una stringa. Vedere anche RTRIM e LTRIM. Sintassi: TRIM(stringa): Esempio: Union SELECT TRIM(‘ stringa di prova ’); darà come risultato: ‘stringa di prova’. Se connettiamo due comandi SELECT con un UNION otterremo gli elementi che sono presenti nel primo SELECT seguiti da quelli presenti nel secondo SELECT. Esempio: UPDATE SELECT FROM tabella WHERE a = 3 MINUS SELECT FROM tabella2 WHERE b = 5; Modifica il valore di un campo già presente nel database. La sintassi è: upper UPDATE NomeTabella SET campo1 = ‘nuovovalore1’, campo2 = ‘nuovovalore2’… WHERE nomecampo = ‘valorecampodiriferimento’; Trasforma in maiuscolo tutti i caratteri di una stringa. Vedere anche LOWER Sintassi: LOWER(stringa); Esempio: SELECT LOWER(‘prova); restituirà: PROVA.