Sobes.tech
Junior

Δημιουργείτε έναν πίνακα audit_logs όπου πρέπει να αποθηκεύσετε την ημερομηνία και την ακριβή ώρα με ζώνη ώρας. Ποιος τύπος δεδομένων είναι ο πιο κατάλληλος; ώρα με ζώνη ώρας διάστημα χρονοστίγμα με ζώνη ώρας ημερομηνία χρονοστίγμα χωρίς ζώνη ώρας

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