Cheat Sheet dei comandi comuni di MySQL
MySQL è il sistema di gestione di database relazionali open source più popolare al mondo. Questa cheat sheet organizza i comandi SQL più comunemente usati nello sviluppo e nella manutenzione quotidiana dei database.
Connessione e Gestione
| Comando | Descrizione | Esempio |
|---|---|---|
mysql -u root -p |
Connettiti al database come utente root | mysql -u root -p |
exit / quit |
Esci dalla riga di comando di MySQL | exit |
show databases; |
Elenca tutti i database | show databases; |
use <db_name>; |
Passa al database specificato | use my_app; |
status; |
Visualizza le informazioni sullo stato della connessione corrente | status; |
Operazioni su Database e Tabelle (DDL)
| Comando | Descrizione | Esempio |
|---|---|---|
create database <name>; |
Crea un nuovo database | create database test_db; |
drop database <name>; |
Elimina database | drop database test_db; |
show tables; |
Elenca tutte le tabelle nel database corrente | show tables; |
create table <table> (...); |
Crea una nuova tabella | create table users (id int, name varchar(20)); |
describe <table>; |
Visualizza la struttura della tabella | describe users; |
alter table <table> add <col>; |
Aggiungi una nuova colonna | alter table users add email varchar(50); |
drop table <table>; |
Elimina tabella | drop table users; |
Operazioni sui Dati (DML)
// Inserisci dati
insert into users (name, age) values ('Alice', 25), ('Bob', 30);// Interroga dati
select * from users where age > 20 order by id desc limit 10;
select count(*) from users;// Aggiorna dati
update users set age = 26 where name = 'Alice';// Elimina dati
delete from users where id = 10;
truncate table users; -- Svuota il contenuto della tabella e reimposta l'ID auto-incrementoQuery di Join (JOIN)
| Type | Descrizione |
|---|---|
INNER JOIN |
Restituisce righe con valori corrispondenti in entrambe le tabelle |
LEFT JOIN |
Restituisce tutte le righe della tabella sinistra e le righe corrispondenti della destra |
RIGHT JOIN |
Restituisce tutte le righe della tabella destra e le righe corrispondenti della sinistra |
UNION |
Combina i risultati di due query (valori univoci) |
// Query di join tra tabelle
select u.name, o.id from users u
inner join orders o on u.id = o.user_id;Gestione Indici
| Comando | Descrizione |
|---|---|
create index <idx_name> on <table>(<col>); |
Crea un indice normale |
create unique index ... |
Crea un indice univoco |
show index from <table>; |
Mostra gli indici nella tabella |
drop index <idx_name> on <table>; |
Elimina indice |
Utenti e Permessi (DCL)
| Comando | Descrizione |
|---|---|
create user 'user'@'host' identified by 'pass'; |
Crea un nuovo utente |
grant all privileges on db.* to 'user'@'host'; |
Concedi privilegi |
revoke all on db.* from 'user'@'host'; |
Revoca privilegi |
drop user 'user'@'host'; |
Elimina utente |
flush privileges; |
Aggiorna i privilegi per renderli effettivi |