Creazione, modifica ed eliminazione delle tabelle
Le strutture delle tabelle — creazione, modifica ed eliminazione — vengono gestite tramite modelli SQL modificabili anziché con un modulo grafico. Questo offre un controllo più diretto rispetto a un designer punta-e-clicca, al costo di dover scrivere un po’ di SQL: OmniDB compila un modello di partenza funzionante e l’utente lo modifica prima di eseguirlo.
Creazione delle tabelle
Creeremo tabelle di esempio (customers e addresses) nel database testdb
a cui ci siamo connessi in precedenza. Fai clic con il tasto destro sul nodo Tables e seleziona
l’azione Create Table. Si aprirà una nuova scheda Query precompilata con un
modello CREATE TABLE per lo schema corrente.
Modifica il modello per ottenere la tabella desiderata — per customers, una chiave primaria a cui addresses farà riferimento in seguito:
CREATE TABLE public.customers (
cust_id serial PRIMARY KEY,
cust_name varchar(100) NOT NULL
);
Esegui l’istruzione (allo stesso modo in cui esegui qualsiasi query). Fai clic con il tasto destro sul nodo dell’albero Tables e clicca su Refresh — la nuova tabella ora appare al suo interno. Mantenendo customers selezionata nell’albero, puoi ispezionare le sue Properties e il suo DDL generati nel pannello accanto all’albero, lo stesso pannello usato per ogni altro tipo di oggetto.
Ora crea addresses, con una chiave esterna che punta a customers:
CREATE TABLE public.addresses (
add_id serial PRIMARY KEY,
add_street varchar(200) NOT NULL,
add_number integer,
cust_id integer NOT NULL REFERENCES public.customers (cust_id)
);
A questo punto ci sono due tabelle correlate nello schema public. Puoi vedere la
struttura dello schema con la funzionalità dei grafici: fai clic con il tasto destro sul nodo dello
schema public e seleziona Render Graph > Simple Graph per vedere solo le tabelle e le loro
relazioni, oppure Render Graph > Complete Graph per includere anche colonne e
vincoli. Entrambi vengono visualizzati come un diagramma interattivo, spostabile e ingrandibile.
Modifica delle tabelle
Per modificare una tabella esistente — ad esempio, aggiungendo una colonna a customers — fai
clic con il tasto destro sul nodo della tabella e seleziona Table Actions > Alter Table. Si aprirà
una scheda Query con un modello ALTER TABLE da modificare ed eseguire, seguendo lo stesso schema
usato per la creazione delle tabelle:
ALTER TABLE public.customers ADD COLUMN cust_age integer;
Qualsiasi errore restituito dal database — ad esempio nel tentativo di aggiungere il nome di una colonna che esiste già — viene mostrato allo stesso modo di qualsiasi query non riuscita: nel pannello Messages della scheda query, con il comando esatto e il testo dell’errore restituito dal database.
Eliminazione delle tabelle
Per eliminare una tabella, fai clic con il tasto destro sul nodo della tabella e seleziona Table Actions >
Drop Table. Anche in questo caso si apre un modello modificabile (DROP TABLE ...) invece di
eliminarla immediatamente — rivedilo ed eseguilo quando sei pronto.