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

JDBC trả về MySQLSyntaxError Exception với câu lệnh đúng

com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:Bạn có lỗi trong cú pháp SQL của mình; kiểm tra hướng dẫn sử dụng tương ứng với phiên bản máy chủ MySQL của bạn để biết cú pháp phù hợp để sử dụng gần '? ,? , DEFAULT, NULL) 'ở dòng 1

Các trình giữ chỗ đó ? hoàn toàn không xuất hiện ở phía MySQL.

Hãy xem đây,

sInserim.executeUpdate(sqlCommandInserim);

bạn đang chuyển chuỗi SQL thô vào executeUpdate() thay vì thực thi PreparedStatement với các giá trị đã đặt.

Thay thế nó bằng

sInserim.executeUpdate();

executeUpdate(sqlString) nên được sử dụng trên Statement chỉ.

Không liên quan đối với vấn đề cụ thể, bạn nên đóng PreparedStatement trong finally ngăn chặn rò rỉ tài nguyên trong trường hợp ngoại lệ. Điều tương tự cũng áp dụng cho Connection , StatementResultSet nhân tiện.




  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 để viết lại thành công mã mysql-php cũ bằng các hàm mysql_ * không dùng nữa?

  2. Cách hoạt động của hàm RPAD () trong MySQL

  3. Vấn đề trên KEY DUPLICATE + AUTO INCREMENT mysql

  4. Khôi phục toàn bộ cụm MySQL hoặc MariaDB Galera từ bản sao lưu

  5. Cách tốt nhất để lưu trữ MySQL trên Azure Cloud