Corso – Lezione 3SELECT INNER JOIN … Facciamo alcune prove sull'uso di INNER JOIN...

Preview:

Citation preview

Corso – Lezione 3

Dove eravamo rimasti ..…Query di aggiornamento UPDATE

Facciamo alcune prove sull'uso di UPDATE

Unire dati tra tabelleSELECT INNER JOIN…

Facciamo alcune prove sull'uso di INNER JOIN

Comuni.Comune,Comuni.Provincia,Comuni.CAP,`CodFisco`,`Popolazione legale 2011

Query di aggiornamentoINSERT

La sintassi INSERT ci permette di inserire all'interno della tabella nuove informazioni (Record)

INSERT INTO <Tabella> VALUES <Campo1>=valore1, <Campo2>=valore2, .…

Facciamo alcune prove sull'uso di INSERT

mail='pdepippis@paper.net'

Query di cancellazioneDELETE

Il comando DELETE serve a cancellare il contenuto di una tabella. Attenzione che se non mettiamo delle condizioni la tabella verrà svuotata senta possibilità di ripristino.

DELETE FROM <Tabella> WHERE <Condizione 1> AND/OR <Condizione2>, .…

Cancellare tabelle e databaseDROP

Il comando DROP serve a una tabella o un Database. Attenzione anche in questo case se cancelliamo non c'è possibilità di ripristino a meno di un Backup.

DROP TABLE <Tabella1>, <Tabella2>, …

DROP DATABASE <Nome del Database>

Ottimizzare l'OUTPUT delle SELECT con DISTINCT

Capita a volte che il risultato di una query resitiuisca record identici (questo perché nei campi estratti non c'è variazione di valori). In questo caso usando DISTINCT dopo SELECT il motore mostra un solo record togliendo le duplicazioni.

Facciamo alcune prove sull'uso del comando DISTINCT e su DELETE

Proviamo a fare il Backup del nostro database

Ottimizzazione Query via script

Ottimizzare il motore MySQL

Per avere un DB sempre in ottima forma oltre all'ottimizzazione delle tabelle da fare con regolarità (slide 14) dobbiamo anche fare in modo che il motore lavori il meno possibile accedendo al disco. In /etc/mysql/my.cfn dobbiamo cercare le direttive modificarle e riavviare il server.buffer_size per tabelle MyISAM →innodb_buffer_pool_size per Tabelle InooDB→I valori variano a seconda del carico comunque

Ottimizzare il motore MySQL

Un altra cosa da fare è impostare l'opzione query_cache_size a 0 in quanto la cache delle query potrebbe essere uno svantaggio sopratutto per gli applicativi che usano molto il DB. Conviene quindi gestire la velocità delle query in fase di progetto.

Grazie per l'attenzione

Domande?

Recommended