Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Có thể xác định cột dấu thời gian không rỗng và không có giá trị mặc định và không có hành vi đặc biệt khi cập nhật không?

Cột dấu thời gian là một trường hợp đặc biệt. Xem tại đây :Theo mặc định, cột TIMESTAMP KHÔNG NULL, không thể chứa giá trị NULL và việc gán NULL sẽ gán dấu thời gian hiện tại.

Để biết thêm thông tin chi tiết, hãy đọc Giá trị mặc định của loại dữ liệu .

Cụ thể tình huống đó áp dụng khi không chạy ở chế độ nghiêm ngặt. Nếu chạy ở chế độ nghiêm ngặt, việc chèn NULL sẽ gây ra lỗi.

Điều này nên chăm sóc nó:

ALTER TABLE tableName ALTER COLUMN columnName DROP DEFAULT;

Nếu điều đó không hiệu quả, thực hiện việc này sẽ để lại mặc định cho bạn (dễ bị ghi đè) nhưng hãy xóa BẬT CẬP NHẬT:

ALTER TABLE tableName CHANGE columnName columnName NOT NULL DEFAULT CURRENT_TIMESTAMP;

Lưu ý tên cột được lặp lại.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Mysql chọn nơi không có trong bảng

  2. cách truy cập dòng lệnh cho xampp trên windows

  3. Làm cách nào để đặt sql_mode trong my.cnf trong MySQL 8?

  4. Những thiếu sót của mysql_real_escape_string?

  5. Sequel Pro với Mysql trong Docker