PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

PostgreSQL CREA TABELLA

Molte volte potrebbe essere necessario creare una tabella in PostgreSQL. Ecco come creare una tabella usando il comando CREATE TABLE di PostgreSQL.

Come creare tabelle in PostgreSQL

Ecco i passaggi per creare una tabella in PostgreSQL.

PostgreSQL CREATE TABLE ti consente di creare una nuova tabella nel database. Ecco la sintassi.

CREATE TABLE [IF NOT EXISTS] table_name(
   column_1_definition,
   column_2_definition,
   ...,
   table_constraints
);

Nella query di creazione tabella sopra, nome_tabella è il nome della tua nuova tabella. SE NON ESISTE è un argomento facoltativo che controlla se la tabella esiste già e crea la tabella solo se non esiste.

colonna_1_definizione , colonna_2_definizione , … sono definizioni di colonna diverse, ciascuna composta dal nome della colonna e dal tipo di dati.

table_contraints sono diversi tipi di vincoli opzionali come il vincolo di chiave esterna, il vincolo di chiave primaria, ecc.

Bonus Leggi:Come creare istogramma in PostgreSQL

Esempi di CREATE TABLE di PostgreSQL

Ecco la query SQL per creare una tabella in PostgreSQL. Creeremo un ordini tabella per memorizzare l'elenco degli ordini

postgres=#CREATE TABLE IF NOT EXISTS orders (
    id INT PRIMARY KEY,
    product_name VARCHAR(255) NOT NULL,
    order_date DATE,
    price INT NOT NULL,
    description TEXT,
    created_at TIMESTAMP NOT NULL
) ;

postgres=# \d orders;
                 Table "public.orders"
    Column    |            Type             | Modifiers
--------------+-----------------------------+-----------
 id           | integer                     | not null
 product_name | character varying(255)      | not null
 order_date   | date                        |
 price        | integer                     | not null
 description  | text                        |
 created_at   | timestamp without time zone | not null

Nella query precedente,

id è la chiave primaria della nostra tabella.

nome_prodotto è una colonna VARCHAR (stringa) in cui memorizzare il nome del prodotto

data_ordine è una colonna di data. Dal momento che non ha alcun vincolo, può anche avere valori NULL.

prezzo è una colonna intera con un vincolo NOT NULL. Quindi non può avere valori nulli.

creato_at è una colonna timestamp e non può avere valori NULL.

Bonus Leggi:Come creare un utente in PostgreSQL

PostgreSQL CREA TABELLA con CHIAVE ESTERA

Creiamo una nuova tabella in PostgreSQL con il vincolo FOREIGN KEY. Creeremo una nuova tabella order_status con una chiave esterna order_id che fa riferimento alla chiave primaria di ordini tabella.

postgres=# CREATE TABLE IF NOT EXISTS order_status (
             status_id INT,
             order_id INT,
             status VARCHAR(255) NOT NULL,
             is_completed BOOLEAN NOT NULL DEFAULT FALSE,
                PRIMARY KEY (status_id),
                FOREIGN KEY (order_id)
                REFERENCES orders (id)
                ON UPDATE RESTRICT ON DELETE CASCADE
               );

postgres=# \d order_status;
                  Table "public.order_status"
    Column    |          Type          |       Modifiers
--------------+------------------------+------------------------
 status_id    | integer                | not null
 order_id     | integer                |
 status       | character varying(255) | not null
 is_completed | boolean                | not null default false
Indexes:
    "order_status_pkey" PRIMARY KEY, btree (status_id)
Foreign-key constraints:
    "order_status_order_id_fkey" FOREIGN KEY (order_id) REFERENCES orders(id) ON UPDATE RESTRICT ON DELETE CASCADE

Nella query precedente, aggiungiamo un vincolo di chiave esterna durante la creazione della tabella PostgreSQL.

Si spera che ora sia possibile creare facilmente tabelle in PostgreSQL.

Ubiq semplifica la visualizzazione dei dati in pochi minuti e il monitoraggio in dashboard in tempo reale. Provalo oggi!