0
我使用SQL變量替換,我收到以下錯誤:在查詢變量替換錯誤
at com.ibm.as400.access.JDError.throwSQLException(JDError.java:408)
at com.ibm.as400.access.AS400JDBCPreparedStatement.setValue(AS400JDBCPreparedStatement.java:3532)
at com.ibm.as400.access.AS400JDBCPreparedStatement.setString(AS400JDBCPreparedStatement.java:3211)
at queries.RunQueryDB2.runNameAccount(RunQueryDB2.java:237)
跟蹤使我對這個代碼段,
stmt.setString(1, name[0]);
stmt.setString(2, name[1]);
stmt.setString(3, name[2]);
它引用這條SQL變量替換:
nameToAcctQuery="SELECT DISTINCT a.Acnum"
+ "FROM table c, table p, table a "
+ "WHERE c.First= '?.toUpperCase()' "
+ "AND c.Mid= '?.toUpperCase()' "
+ "AND c.Last= '?.toUpperCase()' "
+ "AND p.Pol= a.pol"
+ "AND p.name= c.name";
我在其他許多查詢中使用這種格式,而且我不能我,弄清楚爲什麼我在我的變量替換中出現錯誤。任何想法爲什麼?
什麼是日是否拋出了SQLException的內部異常?錯誤可能是因爲在倒數第二行的末尾沒有空格。 –
耶穌...我怎麼錯過了?我看了45次。謝謝。就這些。 –
你在單引號中包裝了綁定佔位符('?'),這真的有用嗎?也許這是DB2的特殊語法。 –