我在查询中使用属性文件传递参数,例如indexid = a,b,c,d.Below是我的代码 -
PreparedStatement ps =conn.prepareStatement("Select * from indexcalc where DATE between ? and ? and "+"isd_index in ?");
ps.setDate(1, d1);
ps.setDate(2, d2);
ps.setString(1, indexList);
现在的问题是,如果我在属性文件中标记的值如'a','b',查询运行正常,但我想要传递参数,如a,b.So将接近什么,以便参数传递像a应该被处理查询为'a'.please建议。
答案 0 :(得分:0)
要获得简单快速的解决方案,请先阅读file
中的String S
String[] sArray= S.split(",");
//now sArray contains all the values
String indexList= null;
for(int i=0;t<sArray.length;i++){
sArray[i]= "'"+sArray[i]+"'";
indexList= indexList + sArray[i];
}
//with 'a' sArray
现在只需将其作为
中的参数传递PreparedStatement ps =conn.prepareStatement("Select * from indexcalc where DATE between ? and ? and "+"isd_index in ?");
ps.setDate(1, d1);
ps.setDate(2, d2);
ps.setString(3, indexList);