Я пытаюсь получить destination(zielort)
для artikelID
, который я получу из своего графического интерфейса. К сожалению, я всегда получаю сообщение об ошибке
com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: Неизвестный идентификатор столбца в предложении «где»
В моей базе данных есть ArtikelID с ID=1234. В своем тестовом классе я пытаюсь получить destination(zielort)
моего ArtikelID
1234. В результате я должен получить E1.R10.D2,
, но получаю сообщение об ошибке.
Надеюсь, вы поможете мне найти мою ошибку.
**Test Class:**
public static void main(String[] args) {
// TODO Auto-generated method stub
//DBConnect connect = new DBConnect();
//String s = connect.getLoginDaten(1);
//System.out.print(s);
DBConnect connect = new DBConnect();
String s= connect.getZielort(1234);
System.out.print(s);
}
**DB-Connect Class:**
public String getZielort(int arikel_ID) {
String zielort="";
try {
String query = "select zielort from warenliste where id="+arikel_ID;
rs= st.executeQuery(query);
while (rs.next()) {
zielort = rs.getString("zielort");
}
}
catch(Exception e) {
System.out.println(e);
}
return zielort;
}
public int getArtikel(int arikel_ID) {
int artikelid=0;
try {
String query = "select Artikel_ID from warenliste where id="+arikel_ID;
rs= st.executeQuery(query);
while (rs.next()) {
artikelid = rs.getInt("Artikel_ID");
}
}
catch(Exception e) {
System.out.println(e);
}
return artikelid;
}
1 ответ
Исключение означает, что в вашей таблице нет столбца с именем id
. Из вашего запроса
"select Artikel_ID from warenliste where id="+arikel_ID;
Я предполагаю, что столбец называется Artikel_ID
, поэтому ваш запрос должен выглядеть так:
"select Artikel_ID from warenliste where Artikel_ID="+arikel_ID;
Конечно, у вас может быть другая схема. Загляните в свою базу данных, чтобы узнать, как названы столбцы таблицы warenliste
, а затем замените Artikel_ID
фактическим именем столбца.
Кстати, если вы работаете с пользовательским вводом, взгляните на PreparedStatement
по соображениям безопасности (например, SQL-инъекция).
Похожие вопросы
Новые вопросы
java
Java — это высокоуровневый объектно-ориентированный язык программирования. Используйте этот тег, если у вас возникли проблемы с использованием или пониманием самого языка. Этот тег часто используется вместе с другими тегами для библиотек и/или фреймворков, используемых разработчиками Java.