Mysql
 sql >> Baza danych >  >> RDS >> Mysql

com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException Wstaw błąd mysql

Celem przygotowanych stwierdzeń jest między innymi to, aby nie łączyć samodzielnie swoich zapytań.

Chcesz wykonać następujące czynności:

//first you "prepare" your statement (where the '?' acts as a kind of placeholder)
PreparedStatement st = con.prepareStatement("insert into user (user,age,school,password) values (?,?,?,?);");
//now you bind the data to your parameters
st.setString(1, user);
...
//and then you can execute it
st.executeUpdate()

Więcej informacji znajdziesz w oficjalnym samouczku .

Za kulisami dzieje się kilka rzeczy, które sprawiają, że zapytanie jest bezpieczne, na przykład unikanie znaków specjalnych, które w przeciwnym razie pozwoliłyby na zmianę instrukcji (wstrzyknięcia Google SQL, jeśli chcesz dowiedzieć się więcej)




  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 UUID(), gdy nie jest unikalny?

  2. Objaśnienie struktury MySQL High Availability Framework – część III:scenariusze awarii

  3. MySQL - wybierz grupy posiadające wartości obejmujące zbiór

  4. Przewodnik po zrozumieniu wzorców skalowania bazy danych

  5. Możliwy sposób wstawienia lastInsertId z jednej tabeli do drugiej w tym samym czasie lub jednocześnie