Im застрял и разочарование по этим линиям кодов:Java MySQL Query не работает
String updateSQL="UPDATE " + tableName + " set " + secondColumn + "='"+ value2 + "',"+ thirdColumn + "='"+ value3 +"'" + "," + fourthColumn +"='"+ value4 +"'" + "where " + firstColumn + " = "+ checkvalue ;
Im получать этот запрос работает отлично! Хотя у меня есть еще один запрос, который не бежит совершенным, но который находится в том же стиле:
String updateSQL="UPDATE " + tableName + " set " + secondColumn + "='"+ value2 +"'" + ","+ thirdColumn + "='"+ value3 +"'" + "," + fourthColumn +"='"+ value4 +"'" + "," + fifthColumn +"='"+ value5 +"'" + "where " + firstColumn + " = "+ checkvalue ;
При выполнении этой строки кода при попытке обновления я получаю сообщение об ошибке «Неизвестный столбца в„PNO3“в Где положение «
Хотя я знаю, что у меня PNO3 в первом столбце, и когда он делает то же самое с первым запросом, он находит его? любая помощь?
Я использую этот оператор switch, чтобы убедиться, что столбцы указывают на правильные.
switch (tableName) {
case "s":
firstColumn = "ID";
secondColumn = "Namn";
thirdColumn = "Efternamn";
fourthColumn = "Adress";
break;
case "p":
firstColumn = "PNO";
secondColumn = "PNAME";
thirdColumn = "COLOR";
fourthColumn = "WEIGHT";
fifthColumn = "CITY";
break;
case "j":
firstColumn = "JNO";
secondColumn = "JNAME";
thirdColumn = "CITY";
break;
case "spj":
firstColumn = "SNO";
secondColumn = "PNO";
thirdColumn = "JNO";
fourthColumn = "QTY";
break;
}
Похоже, вы отправляете неправильные имена столбцов для своей таблицы PNO3. Запустите 'updateSQL' перед запуском и проверьте, можете ли вы запустить его из своей любимой библиотеки запросов MySQL. –
Первое, что нужно сделать: прекратить включение значений непосредственно в ваш SQL. Вместо этого используйте параметризованный SQL. –
Во-вторых, послушайте Jon Skeet –