Sobes.tech
Junior

Sie erstellen eine Tabelle audit_logs, in der das Datum und die genaue Uhrzeit mit Zeitzone gespeichert werden sollen. Welcher Datentyp ist am geeignetsten? Zeit mit Zeitzone Intervall Zeitstempel mit Zeitzone Datum Zeitstempel ohne Zeitzone

sobes.tech KI

Antwort von 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
);