Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Chèn ngày giờ tùy chỉnh vào cột TIMESTAMP trong MySQL

Không dùng UNIX_TIMESTAMP() (trả về số nguyên) cho cột TIMESTAMP. Chèn trực tiếp chuỗi ngày giờ chuẩn 'YYYY-MM-DD HH:MM:SS'.

Sai lầm thường gặp

SELECT UNIX_TIMESTAMP('2019-01-09 15:48:23'); 
-- Trả về: 1547029103 (số nguyên, KHÔNG phù hợp cho cột TIMESTAMP)

Cách đúng: Chèn chuỗi ngày giờ trực tiếp

INSERT INTO ten_bang (cot_timestamp) VALUES ('2019-01-09 15:48:23');

Ví dụ minh họa

Tạo bảng TimestampDemo:

CREATE TABLE TimestampDemo (
    Id INT NOT NULL AUTO_INCREMENT,
    yourTimestamp TIMESTAMP,
    PRIMARY KEY (Id)
);

INSERT INTO TimestampDemo (yourTimestamp) VALUES
('2019-01-09 15:48:23'), ('2018-03-14 16:04:23'),
('2017-12-10 10:08:20'), ('2016-04-05 13:45:21');

Kết quả:

+----+-----------------------+
| Id | yourTimestamp         |
+----+-----------------------+
|  1 | 2019-01-09 15:48:23   |
|  2 | 2018-03-14 16:04:23   |
|  3 | 2017-12-10 10:08:20   |
|  4 | 2016-04-05 13:45:21   |
+----+-----------------------+

Lưu ý: MySQL tự chuyển đổi múi giờ nếu cột TIMESTAMP và session time_zone khác nhau. Dùng DATETIME nếu muốn lưu đúng giá trị nhập vào không chuyển đổi.