Оператор PostgreSQL CREATE TABLE используется для создания новой таблицы в любой из заданных баз данных.
Синтаксис
Основной синтаксис оператора CREATE TABLE следующий:
CREATE TABLE table_name( column1 datatype, column2 datatype, column3 datatype, ..... columnN datatype, PRIMARY KEY( one or more columns ) );
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 , которая будет использоваться для вывода списка всех таблиц в присоединенной базе данных.
testdb-# \d
Приведенный выше оператор PostgreSQL даст следующий результат:
List of relations Schema | Name | Type | Owner --------+------------+-------+---------- public | company | table | postgres public | department | table | postgres (2 rows)
Используйте \ d tablename для описания каждой таблицы, как показано ниже —
testdb-# \d company
Приведенный выше оператор PostgreSQL даст следующий результат: