PostgreSQL: Tabelle erstellen

PostgreSQL verwendet die CREATE TABLE-Anweisung, um Datenbanktabellen zu erstellen.

Syntax

CREATE TABLEDie Syntax lautet wie folgt:

CREATE TABLE table_name(
   column1 datatype,
   column2 datatype,
   column3 datatype,
   .....
   columnN datatype,
   PRIMARY KEY( 一个或多个列 )
);

CREATE TABLEist ein Schlüsselwort, das dem Datenbanksystem mitteilt, dass eine Datentabelle erstellt wird.

Der Tabellenname muss unter anderen Tabellen, Sequenzen, Indizes, Ansichten oder Fremdtabellennamen im selben Schema eindeutig sein.

CREATE TABLEErstellt eine neue leere Tabelle in der aktuellen Datenbank; die Tabelle gehört dem Benutzer, der diesen Befehl ausgibt.

Jedes Feld in der Tabelle definiert einen Datentyp, wie folgt:

Beispiel

Das Folgende erstellt eine Tabelle mit dem TabellennamenCOMPANYTabelle, wobei der PrimärschlüsselID,NOT NULL ist undangibt, dass das Feld keinenNULLWert:

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

Als Nächstes erstellen wir eine weitere Tabelle, die in späteren Kapiteln verwendet wird:

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

Wir können den\dBefehl verwenden, um zu überprüfen, ob die Tabelle erfolgreich erstellt wurde:

exampledb=# \d
           List of relations
 Schema |    Name    | Type  |  Owner   
--------+------------+-------+----------
 public | company    | table | postgres
 public | department | table | postgres
(2 rows)

\d tablenameTabelleninformationen anzeigen:

exampledb=# \d company
                  Table "public.company"
 Column  |     Type      | Collation | Nullable | Default 
---------+---------------+-----------+----------+---------
 id      | integer       |           | not null | 
 name    | text          |           | not null | 
 age     | integer       |           | not null | 
 address | character(50) |           |          | 
 salary  | real          |           |          | 
Indexes:
    "company_pkey" PRIMARY KEY, btree (id)
Weitere Erweiterungen