sql >> Databasteknik >  >> RDS >> PostgreSQL

PostgreSQL SKAPA TABELL

Många gånger kan du behöva skapa tabeller i PostgreSQL. Så här skapar du en tabell med PostgreSQL CREATE TABLE-kommandot.

Hur man skapar en tabell i PostgreSQL

Här är stegen för att skapa tabeller i PostgreSQL.

PostgreSQL CREATE TABLE låter dig skapa en ny tabell i databasen. Här är syntaxen.

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

I ovanstående skapa tabell-fråga, tabellnamn är namnet på ditt nya bord. IF NOT EXISTS är ett valfritt argument som kontrollerar om tabellen redan finns och skapar en tabell endast om den inte finns.

column_1_definition , kolumn_2_definition , … är olika kolumndefinitioner som var och en består av kolumnnamn och datatyp.

table_contraints finns olika typer av valfria begränsningar som begränsningar för främmande nyckel, begränsningar för primärnyckel osv.

Bonus Läs:Hur man skapar histogram i PostgreSQL

Exempel på PostgreSQL CREATE TABLE

Här är SQL-frågan för att skapa tabell i PostgreSQL. Vi kommer att skapa en order tabell för att lagra listan över beställningar

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

I ovanstående fråga,

id är vårt bords primära nyckel.

produktnamn är en VARCHAR (sträng) kolumn för att lagra produktnamn

order_datum är en datumkolumn. Eftersom den inte har några begränsningar kan den till och med ha NULL-värden.

pris är en heltalskolumn med en NOT NULL-begränsning. Så det kan inte ha nollvärden.

skapad_på är en tidsstämpelskolumn och kan inte ha NULL-värden.

Bonus Läs:Hur man skapar användare i PostgreSQL

PostgreSQL SKAPA TABELL med FOREIGN KEY

Låt oss skapa en ny tabell i PostgreSQL med FOREIGN KEY-begränsning. Vi kommer att skapa en ny tabell order_status med en främmande nyckel order_id som refererar till den primära nyckeln för order bord.

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

I ovanstående fråga lägger vi till en främmande nyckel-begränsning när vi skapar PostgreSQL-tabellen.

Förhoppningsvis kan du nu enkelt skapa tabeller i PostgreSQL.

Ubiq gör det enkelt att visualisera data på några minuter och övervaka i realtidsinstrumentpaneler. Prova det idag!

  1. 5 snabba användbara tips för SQL Server Production DBA:er

  2. Lägg till ny RAC-instans manuellt

  3. Datamodeller

  4. Kan du ringa en webbtjänst från TSQL-kod?