PostgreSQL Создание таблицы

PostgreSQL использует оператор CREATE TABLE для создания таблиц базы данных.

Синтаксис

CREATE TABLEФормат синтаксиса следующий:

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

CREATE TABLE— это ключевое слово, используемое для того, чтобы сообщить системе базы данных о том, что будет создана таблица данных.

Имя таблицы должно быть уникальным среди других таблиц, последовательностей, индексов, представлений или имён внешних таблиц в той же схеме.

CREATE TABLEСоздаёт новую пустую таблицу в текущей базе данных; таблица будет принадлежать пользователю, выполняющему эту команду.

Каждое поле в таблице определяет тип данных, как показано ниже:

Пример

Следующее создаёт таблицу с именем таблицыCOMPANY, с первичным ключомID,NOT NULLуказывает, что поле не допускаетNULLзначение:

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

Далее давайте создадим другую таблицу, которая будет использоваться в следующих главах:

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

Мы можем использовать\dкоманду, чтобы проверить, успешно ли была создана таблица:

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

\d tablenameПросмотр информации о таблице:

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)
Другие расширения