Junior
Tworzysz tabelę audit_logs, w której musisz przechowywać datę i dokładny czas z strefą czasową. Jaki jest najbardziej odpowiedni typ danych? czas z strefą czasową interwał znacznik czasu z strefą czasową data znacznik czasu bez strefy czasowej
sobes.tech AI
Odpowiedź od 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
);