sql语句可以手动工作,但不能在java中工作
以下声明sql语句可以手动工作,但不能在java中工作,java,sql,oracle,jdbc,Java,Sql,Oracle,Jdbc,以下声明 String sql="select count(*) as n1,tw.id_tweet as n2 from tweet tw inner join tweet replica on tw.id_tweet=replica.in_reply_to_status_id_str where LOWER(replica.parola_chiave)=lower( ? ) group by tw.id_tweet,tw.parola_chiave"; Pr
String sql="select count(*) as n1,tw.id_tweet as n2 from tweet tw inner join tweet replica on tw.id_tweet=replica.in_reply_to_status_id_str where LOWER(replica.parola_chiave)=lower( ? ) group by tw.id_tweet,tw.parola_chiave";
PreparedStatement stmt =conn.prepareStatement(sql);
stmt.setString(1,parola_chiave_in_esame);
ResultSet rs = stmt.executeQuery();
while(rs.next())
{
System.out.println("asd"+rs.getInt("n1"));
}
rs.close();
stmt.close();
手动工作,但在Java中返回一个空集。如果我删除了它工作的条件(显然结果不是我想要的)。。为什么?我猜,您的输入值(parola_……)可能错误(或)为空。当您手动运行该语句时,该语句看起来如何?显然它里面没有
?
,那么你用什么来代替?
?那么,你已经试过了:stmt.setString(1,“Melo”)代码>试试LOWER(tw.parola\u chiave)=“melo”而不使用lowerWell,您确定您的Java连接与手动运行时连接的Java连接相同吗?