PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

PostgreSQL CRÉER TABLE

Plusieurs fois, vous devrez peut-être créer une table dans PostgreSQL. Voici comment créer une table à l'aide de la commande PostgreSQL CREATE TABLE.

Comment créer une table dans PostgreSQL

Voici les étapes pour créer une table dans PostgreSQL.

PostgreSQL CREATE TABLE vous permet de créer une nouvelle table dans la base de données. Voici la syntaxe.

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

Dans la requête de création de table ci-dessus, table_name est le nom de votre nouvelle table. IF NOT EXISTS est un argument facultatif qui vérifie si la table existe déjà et crée une table uniquement si elle n'existe pas.

column_1_definition , colonne_2_definition , … sont différentes définitions de colonne, chacune composée d'un nom de colonne et d'un type de données.

table_contraints sont différents types de contraintes facultatives telles que la contrainte de clé étrangère, la contrainte de clé primaire, etc.

Lecture bonus :comment créer un histogramme dans PostgreSQL

Exemples PostgreSQL CREATE TABLE

Voici la requête SQL pour créer une table dans PostgreSQL. Nous allons créer une commande table pour stocker la liste des commandes

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

Dans la requête ci-dessus,

identifiant est la clé primaire de notre table.

nom_du_produit est une colonne VARCHAR (chaîne) pour stocker le nom du produit

date_commande est une colonne de date. Comme il n'a aucune contrainte, il peut même avoir des valeurs NULL.

prix est une colonne entière avec une contrainte NOT NULL. Il ne peut donc pas avoir de valeurs nulles.

created_at est une colonne d'horodatage et ne peut pas avoir de valeurs NULL.

Lecture bonus :Comment créer un utilisateur dans PostgreSQL

PostgreSQL CREATE TABLE avec FOREIGN KEY

Créons une nouvelle table dans PostgreSQL avec la contrainte FOREIGN KEY. Nous allons créer une nouvelle table order_status avec une clé étrangère order_id qui fait référence à la clé primaire des commandes tableau.

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

Dans la requête ci-dessus, nous ajoutons une contrainte de clé étrangère lors de la création de la table PostgreSQL.

J'espère que vous pouvez maintenant créer facilement une table dans PostgreSQL.

Ubiq facilite la visualisation des données en quelques minutes et la surveillance dans des tableaux de bord en temps réel. Essayez-le aujourd'hui !