下面是我的查询,它在命令窗口中成功运行,但在 JDBC 中我无法为此获取结果集。
select * From Elp_Dealer_Recon_Wrk where CERTIFICATE='FACTURA MTY10745/24';
如果我在 cmd 窗口中使用相同的查询,它将返回结果集,而在 jdbc 中它不返回任何结果集
如果我在表中提供其他值而不是 FACTURA MTY10745/24,它会在 jdbc 中获取记录。
谁能帮我解决这个问题
最佳答案
就像评论中提到的 @OrangeDog 一样,为了避免此类错误,您必须使用 PreparedStatement
,这是您可以遵循的示例:
String str = "FACTURA MTY10745/24";
String query = "Select DATE_COMP From ELP_DEALER_RECON_WRK WHERE CERTIFICATE = ?";
//-----------------------------------------------------------------------------^
try(PreparedStatement pst = con.prepareStatement(query)){
pst.setString(1, str);// Set the input
ResultSet result = pst.executeQuery();
//... get results
}
关于java - 查询特定值时如何处理java jdbc中的正斜杠(/)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45611046/