Lezione 2: Parlare la Lingua delle Basi di Dati — Comandi SQL di Base


Lesson2

Lezione 2: Parlare la Lingua delle Basi di Dati — Comandi SQL di Base

Bentornato, aspirante mago dei dati! Ora che il tuo regno PostgreSQL è stato fondato, è tempo di imparare a parlare con i tuoi dati. E no, non intendo sussurrare parole dolci alle tue tabelle (anche se, se ti aiuta, vai pure!). Oggi ci immergeremo nelle basi di SQL, il linguaggio che ti permette di comandare le tue basi di dati con precisione (e magari un pizzico di stile).

Cos’è SQL?

SQL (si pronuncia “sequèl” o “S-Q-L”, a seconda di quanto vuoi sembrare sapiente) sta per Structured Query Language. È il linguaggio numero uno per interagire con le basi di dati relazionali. Immagina SQL come Google Translate per parlare con i tuoi dati. Vuoi tirar fuori tutte le righe da una tabella? SQL è lì per te. Vuoi aggiungere, eliminare o modificare informazioni? SQL risponde: “Dì solo la parola!”.

Insomma, se PostgreSQL fosse il tuo maggiordomo obbediente, SQL sarebbero quei bigliettini che gli lasci per ricordargli cosa fare.

Comandi SQL di Base: Le Basi

Prima di iniziare a creare query complesse, come la ricetta di una nonna, cominciamo con le basi. Ecco di cosa parleremo oggi:

  1. CREATE TABLE: Costruisci una casa per i tuoi dati.
  2. INSERT INTO: Invita i dati nella tua nuova casa.
  3. SELECT: Chiedi cosa c’è dentro.
  4. UPDATE: Sposta un po’ i mobili (cioè, modifica i dati).
  5. DELETE: Gentilmente accompagna i dati alla porta (o magari con un bel calcio).

1. CREATE TABLE

Il comando CREATE TABLE è il punto di partenza. Pensa a questo come alla posa delle fondamenta del tuo castello—senza di esso, i tuoi dati non avrebbero dove stare.

CREATE TABLE cavalieri (
    id SERIAL PRIMARY KEY,
    nome VARCHAR(100),
    missione VARCHAR(255),
    colore_preferito VARCHAR(50)
);

In questo esempio, stiamo creando una tabella chiamata cavalieri con quattro colonne: id, nome, missione e colore_preferito. Nota come definiamo il tipo di dati per ogni colonna (ad esempio, VARCHAR per i campi di testo). SERIAL PRIMARY KEY per id significa che ogni cavaliere avrà un numero ID unico, nel caso dovessimo metterli in fila per le battaglie.

2. INSERT INTO

Ora che abbiamo una tabella, aggiungiamo qualche cavaliere. Usa il comando INSERT INTO per popolare la tua tabella con i dati—è un po’ come aggiungere nomi alla lista degli ospiti di una festa esclusiva.

INSERT INTO cavalieri (nome, missione, colore_preferito)
VALUES ('Sir Lancillotto', 'Cercare il Santo Graal', 'Blu'),
       ('Sir Galahad', 'Trovare il Graal', 'Rosso'),
       ('Re Artù', 'Governare Camelot', 'Verde');

Qui, stiamo invitando tre cavalieri a unirsi alla nostra tavola rotonda. Ricorda: con INSERT INTO si specificano prima i nomi delle colonne e poi i valori tra parentesi.

3. SELECT

Una volta riempita la tabella, è tempo di vedere cosa c’è dentro. Il comando SELECT è come bussare alla porta e chiedere: “Chi c’è dentro?”

SELECT * FROM cavalieri;

L’asterisco * significa “seleziona tutto”, quindi PostgreSQL restituirà tutte le colonne per ogni cavaliere nella tua tabella. Se vuoi solo sapere i loro colori preferiti (eh sì, ognuno ha le sue curiosità), puoi specificare:

SELECT nome, colore_preferito FROM cavalieri;

Ora vedrai una tabella con solo i nomi e i loro colori preferiti. Facile!

4. UPDATE

Hai cambiato idea sul colore preferito di Sir Galahad? Nessun problema! Usa il comando UPDATE per modificare i dati esistenti, come ridipingere una stanza.

UPDATE cavalieri
SET colore_preferito = 'Giallo'
WHERE nome = 'Sir Galahad';

La clausola WHERE dice a PostgreSQL quale riga aggiornare. Senza di essa, finiresti per dipingere tutto il castello di giallo—e a meno che tu non sia un fan sfegatato del giallo, probabilmente non è quello che vuoi.

5. DELETE

Infine, se un cavaliere decide di andare in pensione (o vuoi semplicemente snellire la tua tabella), puoi usare il comando DELETE.

DELETE FROM cavalieri
WHERE nome = 'Re Artù';

Ancora una volta, la clausola WHERE è cruciale. Senza di essa, elimineresti tutti i cavalieri. E una tavola rotonda vuota… beh, non è proprio il massimo.

Mettiamo Tutto Insieme

Ecco uno script veloce per provare tutto quello di cui abbiamo parlato oggi:

CREATE TABLE cavalieri (
    id SERIAL PRIMARY KEY,
    nome VARCHAR(100),
    missione VARCHAR(255),
    colore_preferito VARCHAR(50)
);

INSERT INTO cavalieri (nome, missione, colore_preferito)
VALUES ('Sir Lancillotto', 'Cercare il Santo Graal', 'Blu'),
       ('Sir Galahad', 'Trovare il Graal', 'Rosso'),
       ('Re Artù', 'Governare Camelot', 'Verde');

SELECT * FROM cavalieri;

UPDATE cavalieri
SET colore_preferito = 'Giallo'
WHERE nome = 'Sir Galahad';

DELETE FROM cavalieri
WHERE nome = 'Re Artù';

SELECT * FROM cavalieri;

Prova a eseguire questo script nel tuo terminale PostgreSQL e guarda la magia prendere vita!

Riepilogo: Cosa Abbiamo Imparato Oggi?

Oggi abbiamo esplorato i comandi SQL di base che ti permettono di creare, modificare e visualizzare i tuoi dati:

  • CREATE TABLE: Impostare una nuova tabella per i tuoi dati.
  • INSERT INTO: Aggiungere nuove righe alla tabella.
  • SELECT: Visualizzare i dati nella tabella.
  • UPDATE: Modificare i dati esistenti.
  • DELETE: Rimuovere righe dalla tabella.

E Adesso?

Nella prossima lezione ci immergeremo nel mondo di Joins e Relazioni—come far parlare tra loro le tabelle come vecchi amici. Fino ad allora, continua a praticare i tuoi incantesimi SQL e ricorda: con grande potere viene grande responsabilità… specialmente con il comando DELETE!

Pronto a immergerti? Passa subito alla Lezione 3: Joins e Relazioni.


Benvenuto nel linguaggio delle basi di dati. Che le tue query siano sempre efficienti e i tuoi risultati sempre precisi!