PostgreSQL - CREA tabella

L'istruzione PostgreSQL CREATE TABLE viene utilizzata per creare una nuova tabella in uno qualsiasi dei database forniti.

Sintassi

La sintassi di base dell'istruzione CREATE TABLE è la seguente:

CREATE TABLE table_name(
   column1 datatype,
   column2 datatype,
   column3 datatype,
   .....
   columnN datatype,
   PRIMARY KEY( one or more columns )
);

CREATE TABLE è una parola chiave, che dice al sistema di database di creare una nuova tabella. Il nome o l'identificatore univoco per la tabella segue l'istruzione CREATE TABLE. Inizialmente, la tabella vuota nel database corrente è di proprietà dell'utente che emette il comando.

Quindi, tra parentesi, viene visualizzato l'elenco, definendo ciascuna colonna nella tabella e di che tipo di dati si tratta. La sintassi diventerà chiara con un esempio fornito di seguito.

Esempi

Il seguente è un esempio, che crea una tabella COMPANY con ID come chiave primaria e NOT NULL sono i vincoli che mostrano che questi campi non possono essere NULL durante la creazione di record in questa tabella -

CREATE TABLE COMPANY(
   ID INT PRIMARY KEY     NOT NULL,
   NAME           TEXT    NOT NULL,
   AGE            INT     NOT NULL,
   ADDRESS        CHAR(50),
   SALARY         REAL
);

Creiamo un'altra tabella, che useremo nei nostri esercizi nei capitoli successivi:

CREATE TABLE DEPARTMENT(
   ID INT PRIMARY KEY      NOT NULL,
   DEPT           CHAR(50) NOT NULL,
   EMP_ID         INT      NOT NULL
);

Puoi verificare se la tua tabella è stata creata correttamente utilizzando \d comando, che verrà utilizzato per elencare tutte le tabelle in un database allegato.

testdb-# \d

L'istruzione PostgreSQL sopra indicata produrrà il seguente risultato:

List of relations
 Schema |    Name    | Type  |  Owner
--------+------------+-------+----------
 public | company    | table | postgres
 public | department | table | postgres
(2 rows)

Uso \d tablename per descrivere ciascuna tabella come mostrato di seguito -

testdb-# \d company

L'istruzione PostgreSQL sopra indicata produrrà il seguente risultato:

Table "public.company"
  Column   |     Type      | Modifiers
-----------+---------------+-----------
 id        | integer       | not null
 name      | text          | not null
 age       | integer       | not null
 address   | character(50) |
 salary    | real          |
 join_date | date          |
Indexes:
    "company_pkey" PRIMARY KEY, btree (id)