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

Làm cách nào chúng ta có thể tự động chèn ngày và giờ hiện tại khi chèn giá trị vào các cột khác trong MySQL?

Trong MySQL, chúng ta có thể tự động chèn ngày và giờ hiện tại vào một cột khi chèn các giá trị trong một cột khác bằng cách khai báo cột đó là DEFAULT CURRENT_TIMESTAMP.

Ví dụ

mysql> Create table testing
   -> (
   -> StudentName varchar(20) NOT NULL,
   -> RegDate TIMESTAMP DEFAULT CURRENT_TIMESTAMP
   -> );
Query OK, 0 rows affected (0.49 sec)

Truy vấn trên sẽ tạo một bảng ‘kiểm tra’ với một cột có tên StudentName và cột khác có tên là ‘RegDate’ được khai báo là DEFAULT CURRENT_TIMESTAMP. Bây giờ, khi chèn các giá trị, tức là tên trong cột Tên sinh viên, ngày và giờ hiện tại sẽ tự động được chèn vào cột khác.

mysql> Insert into testing(StudentName) values ('Ram');
Query OK, 1 row affected (0.14 sec)

mysql> Insert into testing(StudentName) values ('Shyam');
Query OK, 1 row affected (0.06 sec)

mysql> Select * from testing;
+-------------+---------------------+
| StudentName | RegDate             |
+-------------+---------------------+
| Ram         | 2017-10-28 21:24:24 |
| Shyam       | 2017-10-28 21:24:30 |
+-------------+---------------------+
2 rows in set (0.02 sec)

mysql> Insert into testing(StudentName) values ('Mohan');
Query OK, 1 row affected (0.06 sec)

mysql> Select * from testing;
+-------------+---------------------+
| StudentName | RegDate             |
+-------------+---------------------+
| Ram         | 2017-10-28 21:24:24 |
| Shyam       | 2017-10-28 21:24:30 |
| Mohan       | 2017-10-28 21:24:47 |
+-------------+---------------------+
3 rows in set (0.00 sec)

Từ các truy vấn trên, chúng ta có thể thấy rằng khi chèn các giá trị trong StudentName, ngày và giờ cũng được tự động chèn.

Với sự trợ giúp của khái niệm trên, chúng ta cũng có thể biết chính xác ngày và giờ mà các giá trị trong cột khác được chèn vào.