Để chuyển đổi kiểu cột từ TEXT sang TIMESTAMP, dùng lệnh ALTER TABLE ... MODIFY COLUMN.
Cú pháp:
ALTER TABLE yourTableName MODIFY COLUMN yourColumnName TIMESTAMP;
Tạo bảng:
mysql> CREATE TABLE textTotimestampdemo (
-> Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
-> Source TEXT
-> );
Kiểm tra cấu trúc (DESC):
+--------+---------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +--------+---------+------+-----+---------+----------------+ | Id | int(11) | NO | PRI | NULL | auto_increment | | Source | text | YES | | NULL | | +--------+---------+------+-----+---------+----------------+
Thay đổi kiểu cột:
mysql> ALTER TABLE textTotimestampdemo MODIFY COLUMN Source TIMESTAMP;
Kiểm tra lại:
+--------+-----------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +--------+-----------+------+-----+---------+----------------+ | Id | int(11) | NO | PRI | NULL | auto_increment | | Source | timestamp | YES | | NULL | | +--------+-----------+------+-----+---------+----------------+
Cột Source đã chuyển từ text sang timestamp.
Lưu ý: Dữ liệu TEXT hiện có có thể không chuyển đổi được thành timestamp hợp lệ, hãy kiểm tra dữ liệu trước khi thay đổi.