Files
laboratori-cloud/labs/lab-05-database/reference/postgresql-commands.md
T
2026-04-10 14:10:22 +00:00

1.7 KiB

Reference: PostgreSQL Commands per Lab 05

Comandi Utili

Connessione

# Connessione base
docker exec lab05-db psql -U lab05_user -d lab05_db

# Connessione da client nella rete privata
docker run --rm --network lab05-vpc-private \
  -e PGPASSWORD=lab05_password \
  postgres:16-alpine \
  psql -h db -U lab05_user -d lab05_db

# Esegui comando singolo
docker exec lab05-db psql -U lab05_user -d lab05_db -c "SELECT version();"

Operazioni Database

-- Crea database
CREATE DATABASE test_db;

-- Lista database
\l

-- Cambia database
\c test_db

-- Droppia database
DROP DATABASE test_db;

Operazioni Tabelle

-- Crea tabella
CREATE TABLE test_table (
    id SERIAL PRIMARY KEY,
    name TEXT,
    value INTEGER
);

-- Lista tabelle
\dt

-- Descrivi tabella
\d test_table

-- Droppia tabella
DROP TABLE test_table;

DML

-- Insert
INSERT INTO test_table (name, value) VALUES ('test', 42);

-- Select
SELECT * FROM test_table;

-- Update
UPDATE test_table SET value = 100 WHERE name = 'test';

-- Delete
DELETE FROM test_table WHERE name = 'test';

Utility

# Verifica PostgreSQL pronto
docker exec lab05-db pg_isready -U lab05_user

# Backup database
docker exec lab05-db pg_dump -U lab05_user lab05_db > backup.sql

# Ripristina database
cat backup.sql | docker exec -i lab05-db psql -U lab05_user lab05_db

Variabili Ambiente PostgreSQL

Variabile Descrizione Default
POSTGRES_DB Nome database postgres
POSTGRES_USER Utente creato -
POSTGRES_PASSWORD Password utente -
POSTGRES_INITDB_ARGS Argomenti initdb -
PGDATA Data directory /var/lib/postgresql/data