Tổng quan
Các loại Field datetime
Các loại Field datetime bao gồm:
- Datetime (có múi giờ) - Datetime sẽ được chuyển đổi thống nhất sang giờ UTC (Giờ Phối hợp Quốc tế), và chuyển đổi múi giờ khi cần.
- Datetime (không có múi giờ) - Lưu trữ ngày và giờ không có thông tin múi giờ.
- Ngày (không có giờ) - Chỉ lưu trữ ngày, không bao gồm phần giờ.
- Giờ - Chỉ lưu trữ giờ, không bao gồm phần ngày.
- Unix Timestamp - Lưu trữ dưới dạng Unix timestamp, thường là số giây kể từ ngày 1 tháng 1 năm 1970.
Ví dụ về các loại Field liên quan đến ngày:
Đối chiếu các Data Source
Bảng đối chiếu giữa NocoBase, MySQL và PostgreSQL:
Ghi chú:
- Phạm vi dữ liệu của MySQL TIMESTAMP nằm trong khoảng từ giờ UTC
1970-01-01 00:00:01 ~ 2038-01-19 03:14:07. Khi vượt quá phạm vi này, nên sử dụng DATETIME hoặc BIGINT để lưu trữ Unix timestamp.
Quy trình xử lý lưu trữ datetime
Có múi giờ
Bao gồm Datetime (không có múi giờ) và Unix Timestamp

Ghi chú:
- Để hỗ trợ phạm vi dữ liệu rộng hơn, Field datetime (có múi giờ) của NocoBase sử dụng DATETIME trong database MySQL, giá trị ngày được lưu là giá trị đã chuyển đổi theo biến môi trường TZ của server. Nếu biến môi trường TZ thay đổi, giá trị lưu của datetime sẽ thay đổi.
- Giờ UTC và giờ địa phương có chênh lệch múi giờ, hiển thị trực tiếp giá trị UTC gốc có thể gây hiểu lầm cho người dùng.
Không có múi giờ

UTC
UTC (Giờ Phối hợp Quốc tế, Coordinated Universal Time) là chuẩn thời gian toàn cầu, được sử dụng để phối hợp và thống nhất thời gian ở các nơi trên thế giới. Đây là chuẩn thời gian có độ chính xác cao dựa trên đồng hồ nguyên tử và đồng bộ với thời gian quay của Trái Đất.
Giờ UTC và giờ địa phương có chênh lệch múi giờ, hiển thị trực tiếp giá trị UTC gốc có thể gây hiểu lầm cho người dùng, ví dụ:
Trên đây đều là cùng một thời điểm, chỉ khác nhau ở múi giờ.

