Оператор CREATE TABLE в PostgreSQL используется для создания новой таблицы в базе данных. Он позволяет определить имена столбцов, их типы данных, ограничения и другие свойства.
Основы оператора CREATE TABLE
Базовый синтаксис:
CREATE TABLE table_name (
column1 datatype CONSTRAINT,
column2 datatype CONSTRAINT
);Пример создания таблицы пользователей:
CREATE TABLE users (
id SERIAL PRIMARY KEY,
name VARCHAR(100) NOT NULL,
age INT CHECK (age > 0),
city VARCHAR(50)
);Определение ограничений
Можно задавать различные ограничения для столбцов:
PRIMARY KEY– уникальный идентификатор строки.NOT NULL– запрет наNULLзначения.CHECK– условие для проверки значений.UNIQUE– уникальность значений.FOREIGN KEY– ссылка на другой столбец.
Пример с внешним ключом:
CREATE TABLE orders (
id SERIAL PRIMARY KEY,
user_id INT REFERENCES users(id),
amount DECIMAL(10, 2) NOT NULL
);Создание таблицы с значением по умолчанию
Можно задать DEFAULT значение для столбца:
CREATE TABLE products (
id SERIAL PRIMARY KEY,
name VARCHAR(100) NOT NULL,
price DECIMAL(10,2) DEFAULT 0.00
);Создание временной таблицы
Временные таблицы (TEMPORARY или TEMP) существуют только в рамках текущей сессии:
CREATE TEMP TABLE temp_users (
id SERIAL PRIMARY KEY,
name VARCHAR(100)
);