В PostgreSQL нет точного аналога типа данных TINYINT, который есть в других СУБД, таких как MySQL. Однако, в PostgreSQL есть несколько подходов, которые можно использовать для создания аналога TINYINT.
Первый подход - использование типа данных SMALLINT. SMALLINT в PostgreSQL занимает 2 байта и имеет диапазон значений от -32,768 до 32,767. Если вам нужны только два возможных значения (0 и 1), вы можете использовать SMALLINT с ограничениями CHECK, чтобы ограничить его диапазон:
CREATE TABLE my_table ( my_column SMALLINT CHECK (my_column IN (0, 1)) );
Второй подход - использование булевого типа данных BOOLEAN. BOOLEAN в PostgreSQL может принимать только два значения, TRUE или FALSE (1 или 0). Это может быть полезно, если вы ищете простое решение для хранения булевых значений.
CREATE TABLE my_table ( my_column BOOLEAN );
Третий подход - использование типа данных BIT. BIT в PostgreSQL позволяет хранить последовательность битов фиксированной длины. Вы можете создать столбец с типом данных BIT(1), чтобы хранить только один бит.
CREATE TABLE my_table ( my_column BIT(1) );
Каждый из этих подходов имеет свои особенности и вам следует выбрать тот, который лучше всего соответствует вашим потребностям.