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

mysql không thể chèn vì không có giá trị mặc định?

ERROR 1364 (HY000): Field 'price' doesn't have a default value

price decimal(6,2) NOT NULL,

Đặt giá thành null hoặc gán giá trị mặc định

CHỈNH SỬA:

Điều này là do STRICT_TRANS_TABLES gây ra Chế độ SQL.

Mở phpmyadmin và goto More Tab và chọn Variables menu con. Cuộn xuống để tìm chế độ sql. Chỉnh sửa chế độ sql và xóa STRICT_TRANS_TABLES Lưu nó.

HOẶC

Bạn có thể chạy một truy vấn SQL trong công cụ quản lý cơ sở dữ liệu của mình, chẳng hạn như phpMyAdmin:

-- verify that the mode was previously set:
SELECT @@GLOBAL.sql_mode;
-- update mode:
SET @@GLOBAL.sql_mode= 'YOUR_VALUE';

HOẶC

Tìm dòng trông giống như vậy trong tệp conf mysql:

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

Nhận xét ở trên dòng ra và khởi động lại máy chủ mysql



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách tự động để chuyển đổi tệp XML sang cơ sở dữ liệu SQL?

  2. Tìm kiếm mảng bài đăng trong giá trị cột được phân tách bằng dấu phẩy

  3. Cách tối ưu hóa bảng MySQL / MariaDB

  4. SQLSTATE [23000]:Vi phạm ràng buộc toàn vẹn với ràng buộc hợp lệ

  5. PHP Laravel:Không thể thực hiện kết nối vì máy mục tiêu đã chủ động từ chối nó