저는 PreparedStatements를 처음 사용하려고 시도하고 있습니다. 그러나 어떤 이유로이 작업을 수행 할 수 없습니다. PreparedStaement를 사용하지 않은 동일한 요청이 정상적으로 작동합니다.PreparedStatement가 결과를 반환하지 않습니다.
간단한 작업 버전 :
String artNum = "'" + artikelNummer.toLowerCase() + "'";
String query =
"SELECT a.artnr, a.bezeichnung, "
+ "(SELECT verfuegbar_bestand "
+ "FROM getbestand(a.uid)) AS bestand_verfuegbar "
+ "FROM article AS a "
+ "WHERE lower(a.artnr) = " + artNum;
ResultSet results = statement.executeQuery(query);
PreparedStatement의 버전 :
String artNum = "'" + artikelNummer.toLowerCase() + "'";
String query =
"SELECT a.artnr, a.bezeichnung, "
+ "(SELECT verfuegbar_bestand "
+ "FROM getbestand(a.uid)) AS bestand_verfuegbar "
+ "FROM article AS a "
+ "WHERE lower(a.artnr) = ? ";
prepStatement = con.prepareStatement(query);
prepStatement.setString(1, artNum);
ResultSet results = prepStatement.executeQuery();
어떤 도움/아이디어는 매우 greatfully받을 수있다. 직접 값을 전달 매개 변수를 사용하고 있기 때문에, 즉 더 이상 할 필요가 없습니다 -
시 예 artNum는 문자열이 아닌 int로, 예를 들면 A1110
아, 완벽한. 고맙습니다 :) – Sun