Как задать колонке первоначальное значение?

В PostgreSQL есть несколько способов задать первоначальное значение для колонки.

Первый способ - использование ключевого слова DEFAULT при создании таблицы. Например, чтобы задать первоначальное значение для колонки "name" в таблице "users" равным "John", можно использовать следующий код:

CREATE TABLE users (
id SERIAL PRIMARY KEY,
name VARCHAR(50) DEFAULT 'John'
);

В этом примере мы создаем таблицу "users" с колонками "id" и "name". Колонка "id" имеет тип SERIAL, что означает автоматическую инкрементацию, и она выбрана как PRIMARY KEY. Колонка "name" имеет тип VARCHAR(50) и задается первоначальное значение "John" с помощью ключевого слова DEFAULT.

Второй способ - использование ALTER TABLE для добавления или изменения значения DEFAULT. Например, чтобы изменить первоначальное значение для колонки "name" в таблице "users" на "Jane", можно использовать следующий код:

ALTER TABLE users ALTER COLUMN name SET DEFAULT 'Jane';

Этот запрос изменит существующую таблицу "users" и установит новое первоначальное значение для колонки "name" равным "Jane".

Третий способ - использование функции или выражения в качестве значения DEFAULT. Например, чтобы задать текущую дату в качестве первоначального значения для колонки "created_at" в таблице "orders", можно использовать следующий код:

ALTER TABLE orders ALTER COLUMN created_at SET DEFAULT now();

В этом примере мы используем функцию now(), которая возвращает текущую дату и время, в качестве значения DEFAULT для колонки "created_at".

Также следует отметить, что значение DEFAULT может быть любым допустимым выражением, включая константы, арифметические операции, вызовы функций и другие.