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)