Hướng dẫn on update current_timestamp mysql - khi cập nhật current_timestamp mysql
11.2.5 & NBSP; Khởi tạo và cập nhật tự động cho Timestamp và DateTimeCác cột 3 và 4 có thể được tự động khởi tạo và cập nhật vào ngày và giờ hiện tại (nghĩa là dấu thời gian hiện tại).Đối với bất kỳ cột 3 hoặc 4 nào trong bảng, bạn có thể gán dấu thời gian hiện tại làm giá trị mặc định, giá trị cập nhật tự động hoặc cả hai:
Ngoài ra, nếu biến hệ thống 8 bị vô hiệu hóa, bạn có thể khởi tạo hoặc cập nhật bất kỳ cột 3 (nhưng không phải 4) vào ngày và thời gian hiện tại bằng cách gán giá trị 1, trừ khi nó được xác định với thuộc tính 1 cho cho phép 1 .Để chỉ định các thuộc tính tự động, hãy sử dụng các điều khoản 4 và 5 trong các định nghĩa cột. Thứ tự của các điều khoản không quan trọng. Nếu cả hai có mặt trong một định nghĩa cột, một trong hai có thể xảy ra đầu tiên. Bất kỳ từ đồng nghĩa nào cho 7 đều có ý nghĩa tương tự như 7. Đây là 8, 9, 0, 1, 2 và 3.Việc sử dụng 4 và 5 là cụ thể cho 3 và 4. Điều khoản 8 cũng có thể được sử dụng để chỉ định giá trị mặc định hằng số (không tự nhiên) (ví dụ: 9 hoặc 0).
3 hoặc 4 Định nghĩa cột có thể chỉ định dấu thời gian hiện tại cho cả hai giá trị cập nhật mặc định và tự động, cho cái này nhưng không phải cái kia hoặc không. Các cột khác nhau có thể có sự kết hợp khác nhau của các thuộc tính tự động. Các quy tắc sau đây mô tả các khả năng:
Các cột 3 và 4 không có thuộc tính tự động trừ khi chúng được chỉ định rõ ràng, với ngoại lệ này: Nếu biến hệ thống 8 bị vô hiệu hóa, cột 3 đầu tiên có cả 4 và 5 nếu không được chỉ định rõ ràng. Để ngăn chặn các thuộc tính tự động cho cột 3 đầu tiên, hãy sử dụng một trong những chiến lược này:first
3 column has both 4 and 5 if neither is specified explicitly. To suppress automatic properties for the first 3 column, use one of these strategies:
Xem xét các định nghĩa bảng sau:
Các bảng có các thuộc tính này:
Nếu định nghĩa cột 3 hoặc 4 bao gồm một phần chính xác rõ ràng giá trị chính xác ở bất cứ đâu, thì cùng một giá trị phải được sử dụng trong suốt định nghĩa cột. Điều này được cho phép:
Điều này không được phép:
Khởi tạo dấu thời gian và thuộc tính nullNếu biến hệ thống 8 bị vô hiệu hóa, các cột 3 theo mặc định là 5, không thể chứa các giá trị 1 và gán 1 gán dấu thời gian hiện tại. Để cho phép cột 3 chứa 1, khai báo rõ ràng với thuộc tính 1. Trong trường hợp này, giá trị mặc định cũng trở thành 1 trừ khi được ghi đè với mệnh đề 8 chỉ định một giá trị mặc định khác. 16 có thể được sử dụng để chỉ định rõ ràng 1 làm giá trị mặc định. .Bảng sau chứa một số cột 3 cho phép các giá trị 1:
Một cột 3 cho phép các giá trị 1 không đảm nhận thời gian hiện tại vào thời điểm chèn ngoại trừ trong một trong các điều kiện sau:not take on the current
timestamp at insert time except under one of the following conditions:
Nói cách khác, cột 3 được xác định để cho phép 1 chỉ tự động khởi tạo nếu định nghĩa của nó bao gồm 4: 0Nếu cột 3 cho phép các giá trị 1 nhưng định nghĩa của nó không bao gồm 4, bạn phải chèn rõ ràng một giá trị tương ứng với ngày và giờ hiện tại. Giả sử rằng các bảng 3 và 7 có các định nghĩa sau: 1Để đặt cột 3 trong cả hai bảng thành dấu thời gian hiện tại vào thời điểm chèn, gán rõ ràng giá trị đó. Ví dụ: 2Nếu biến hệ thống 8 được bật, các cột 3 chỉ cho phép các giá trị 1 nếu được khai báo với thuộc tính 1. Ngoài ra, các cột 3 không cho phép gán 1 gán dấu thời gian hiện tại, cho dù được khai báo với thuộc tính 1 hoặc 5. Để gán dấu thời gian hiện tại, đặt cột thành 7 hoặc một từ đồng nghĩa như 9. |