首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

sql循环语句有关问题,请问一下各位

2012-01-03 
sql循环语句问题,请教一下各位简化一下我的问题表A,里面字段a1,a2,a3另外一个数组Array[m]现在要查询A表,

sql循环语句问题,请教一下各位
简化一下我的问题
表A,里面字段a1,a2,a3
另外一个数组   Array[m]

现在要查询A表   ,查询条件:字段a1的值等于数组Array[m]里值
我的方法:
......
for(int   i=0;i <m;i++)
{
        ......
        sql= "select   *   from   A   where   a1= ' "+Array[i]+ " '   ";
        while(rst2.next())
        {
                ......
        }
      ......
}
....
因为实际SQL语句比这复杂很多,所有这样循环做感觉很慢,有没有在SQL语句里面完成循环操作的方法,或者其他方法啊,请教各位一下


[解决办法]
sql= "select * from A “
while(rs!=null&&rs.next){
boolean flag=false;
int a=rs.getInt(1);
for(int i=0;i <m;i++){
if(a==Array[m]){
flag=true;
break;
}
if(flag)
a满足你的条件,后面完成你的处理;
}

}
[解决办法]
select * from A where a1=Array[0] or a1=Array[1] or ... a1=Array[m]
[解决办法]
尽量不要循环中套sql,这样效率比较低而且错误率比较高.
String name= " ";
for(int i=0;i <m;i++)
{
name=Array[i];
}
sql= "select * from A where a1= ' "+name+ " ' ";
while(rst2.next())
{
......
}
[解决办法]
同意2楼的方法
[解决办法]
楼上几位说的已经差不多解决问题了
我只简单说一句,复杂的多次重复应用的sql最好写成存储过程
[解决办法]
恩,谢谢 各位的指教
[解决办法]


如果要在循环中就用PreparedStatement.
[解决办法]
对阿 ,很好的 给分啊

热点排行