Sobes.tech
Junior

Създавате таблица audit_logs, където трябва да съхранявате датата и точното време с часови пояс. Кой тип данни е най-подходящ? час с часови пояс интервал timestamp с часови пояс дата timestamp без часови пояс

sobes.tech AI

Отговор от AI

Для хранения даты и точного времени с часовым поясом в таблице audit_logs наиболее подходит тип данных timestamp with time zone. Он сохраняет дату и время с учётом часового пояса, что важно для корректного учёта времени в разных регионах.

  • time with time zone хранит только время суток с часовым поясом, без даты.
  • interval — это интервал времени, не подходит для отметки конкретного момента.
  • date хранит только дату без времени.
  • timestamp without time zone хранит дату и время, но без информации о часовом поясе, что может привести к ошибкам при работе с разными часовыми поясами.

Пример в PostgreSQL:

CREATE TABLE audit_logs (
    id SERIAL PRIMARY KEY,
    event_time TIMESTAMP WITH TIME ZONE NOT NULL,
    event_description TEXT
);