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

Khắc phục “ERROR 3942 (HY000):Mỗi hàng của mệnh đề VALUES phải có ít nhất một cột” khi sử dụng Câu lệnh VALUES trong MySQL

Nếu bạn gặp lỗi có nội dung “ ERROR 3942 (HY000):Mỗi hàng của mệnh đề VALUES phải có ít nhất một cột ”Trong MySQL, bạn có thể có một phương thức khởi tạo hàng trống khi sử dụng VALUES tuyên bố.

Để khắc phục sự cố này, hãy đảm bảo rằng bạn có ít nhất một giá trị trong mỗi ROW() mệnh đề trong VALUES tuyên bố.

Ví dụ về Lỗi

Dưới đây là một ví dụ về mã dẫn đến lỗi:

VALUES ROW();

Kết quả:

ERROR 3942 (HY000): Each row of a VALUES clause must have at least one column, unless when used as source in an INSERT statement.

Đây là một ví dụ rất đơn giản, nhưng sự đơn giản của nó cho chúng ta thấy chính xác những gì đã xảy ra. Tôi đang sử dụng VALUES nhưng có ROW() trống mệnh đề.

Giải pháp

Để khắc phục sự cố, tất cả những gì chúng ta cần làm là cung cấp ít nhất một giá trị cho ROW() mệnh đề:

VALUES ROW('Jet');

Kết quả:

+----------+
| column_0 |
+----------+
| Jet      |
+----------+

Thông thường, chúng tôi sẽ bao gồm nhiều hơn một giá trị trong mỗi ROW() và có thể nhiều hơn một ROW() mệnh đề. Ví dụ:

VALUES ROW(1, 'Jet', 'Black'), ROW(2, 'Faye', 'Valentine');

Kết quả:

+----------+----------+-----------+
| column_0 | column_1 | column_2  |
+----------+----------+-----------+
|        1 | Jet      | Black     |
|        2 | Faye     | Valentine |
+----------+----------+-----------+

Dù bằng cách nào, chúng tôi cần cung cấp ít nhất một giá trị cho mỗi ROW() mệnh đề.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để nhập tệp SQL bằng dòng lệnh trong MySQL?

  2. Trình kích hoạt MySQL để cập nhật một trường thành giá trị của id

  3. Tìm tổng số kết quả trong truy vấn mySQL với offset + giới hạn

  4. MySQL - Trừ giá trị từ hàng trước, nhóm theo

  5. Cách tính toán sự khác biệt giữa hai ngày trong MySQL