Вставка данных в базу данных и ошибка в методе executeUpdate ()

#java #mysql

#java #mysql

Вопрос:

 PreparedStatement ps;
String query = "INSERT INTO order (table_id,dish_id,price,count) VALUES (?,?,?,?)";
try {
    con = DBHelper.getCon();
    ps = con.prepareStatement(query);
    ps.setInt(1, order.getTable_id());
    ps.setInt(2, order.getDish_id());
    ps.setInt(3, order.getPrice());
    ps.setInt(4, order.getCount());
    result = ps.executeUpdate();
...
  

У меня ошибка в executeUpdate() методе. Это показывает

java.sql.SQLSyntaxErrorException: у вас ошибка в синтаксисе SQL; проверьте руководство, соответствующее вашей версии сервера MySQL, чтобы найти правильный синтаксис для использования рядом с ошибкой.

Как я могу это исправить?

Комментарии:

1. Как вы создали порядок таблиц? Я попробовал и получил ошибку. Посмотрите на эту скрипку db

Ответ №1:

В вашем заявлении SQL order понимается как неполный порядок ключевых слов SQL BY.

Я бы посоветовал вам переименовать orders имя таблицы в, чтобы устранить двусмысленность.

Комментарии:

1. Согласно вашему ответу, было бы невозможно создать порядок таблиц в первую очередь, не так ли?

2. Я бы посоветовал вам прочитать и следовать соглашениям об именовании SQL, чтобы избежать таких расхождений. Речь идет не о том, чтобы быть невозможным, а о том, чтобы определять все однозначным и абсолютным образом.

3. Спасибо за ваши предложения. Это работает. Теперь ошибки нет.

4. @EmilyWatson Почему вы удалили мой принятый ответ в другой теме? не могли бы вы дать мне положительный отзыв?

5. Я новый пользователь Stackoverflow. Извините. Я буду голосовать.