Sobes.tech
Junior

¿Estás creando una tabla audit_logs donde necesitas almacenar la fecha y la hora exacta con zona horaria? ¿Cuál es el tipo de datos más apropiado? tiempo con zona horaria intervalo marca de tiempo con zona horaria fecha marca de tiempo sin zona horaria

sobes.tech AI

Respuesta de la IA

Для хранения даты и точного времени с часовым поясом в таблице 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
);