Computer >> Máy Tính >  >> Lập trình >> MySQL

Làm cách nào để thêm cột “được tạo tại” trong bảng để đặt dấu thời gian trong MySQL?

Bạn cần sử dụng lệnh ALTER để thêm cột được tạo tại vào một bảng đã được tạo trong MySQL.

Đầu tiên chúng ta hãy tạo một bảng. Truy vấn để tạo một bảng như sau. Đây là bảng của bạn không có cột "được tạo tại"

mysql> create table formDemo
   - > (
   - > Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   - > Email varchar(128),
   - > PhoneNumber varchar(15),
   - > Country varchar(30),
   - > Platform varchar(40)
   - > );
Query OK, 0 rows affected (0.53 sec)

Bây giờ, hãy triển khai cú pháp trên để thêm cột “được tạo tại” với loại dấu thời gian và mặc định với CURRENT_TIMESTAMP.

Lưu ý - Hãy nhớ rằng nếu bạn đang cho một khoảng trống giữa được tạo tại thời điểm đó, bạn cần sử dụng biểu tượng hình que ngược.

Sau đây là truy vấn để thêm cột "được tạo tại" cho bảng trên. Cột “create_at” là cột TIMESTAMP có giá trị mặc định được đặt thành CURRENT_TIMESTAMP như bạn có thể thấy trong truy vấn bên dưới

mysql> alter table formDemo
   - > add column `created at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP;
Query OK, 0 rows affected (0.42 sec)
Records: 0 Duplicates: 0 Warnings: 0

Bây giờ hãy kiểm tra mô tả của bảng một lần nữa với sự trợ giúp của lệnh DESC.

Truy vấn như sau

mysql> DESC formDemo;

Sau đây là kết quả hiển thị cột “được tạo tại” trong MySQL

+-------------+--------------+------+-----+-------------------+----------------+
| Field       | Type         | Null | Key | Default           | Extra          |
+-------------+--------------+------+-----+-------------------+----------------+
| Id          | int(11)      | NO   | PRI | NULL              | auto_increment |
| Email       | varchar(128) | YES  |     | NULL              |                |
| PhoneNumber | varchar(15)  | YES  |     | NULL              |                |
| Country     | varchar(30)  | YES  |     | NULL              |                |
| Platform    | varchar(40)  | YES  |     | NULL              |                |
| created at  | timestamp    | NO   |     | CURRENT_TIMESTAMP |                |
+-------------+--------------+------+-----+-------------------+----------------+
6 rows in set (0.01 sec)

Nhìn vào kết quả mẫu ở trên, cột “được tạo tại” đã được thêm thành công.