В одной из наших таблиц у нас есть следующие столбцы:
id, date, name, timezone(string)
Как мы можем убедиться, что часовой пояс может быть только одним из pg_timezone_names таблицы? Как мы можем создать для этого внешний ключ?
pg_timezone_names
Это не то, что я обычно рекомендую, но вы можете использовать ограничение check, которое возвращает ошибку вместо true или false:
check
check (timezone( timezone, '2000-01-01'::timestamp) is not null)
Здесь - пример .