表结构----TestDb:
man_id, id_num, name, depart, address, email等,其中man_id是主键(varchar型)id_num是递增序号1.2.3....程序结构----for(int i=1;i<=1000;i++){
String departId=xxxxxxxxx;//depart根据每次循环,其值不一样
int findArea=xxx;//根据每次循环,其值不一样 String sql="select id_num from TestDb where id_num >= " + findArea + " and depart='" + departId + "'
order by man_id DESC"; //执行查询
executeQuery();
//读取记录集,进行相关操作;}问题---------------------
经过测试,发现比较耗时(20-30秒),而时间主要花在执行1000次查询 ,
请问,有什么优化方法没?可以写存储过程不 ?(没写过),望指点!!!
man_id, id_num, name, depart, address, email等,其中man_id是主键(varchar型)id_num是递增序号1.2.3....程序结构----for(int i=1;i<=1000;i++){
String departId=xxxxxxxxx;//depart根据每次循环,其值不一样
int findArea=xxx;//根据每次循环,其值不一样 String sql="select id_num from TestDb where id_num >= " + findArea + " and depart='" + departId + "'
order by man_id DESC"; //执行查询
executeQuery();
//读取记录集,进行相关操作;}问题---------------------
经过测试,发现比较耗时(20-30秒),而时间主要花在执行1000次查询 ,
请问,有什么优化方法没?可以写存储过程不 ?(没写过),望指点!!!
你的好像是open close DB 1000此
findArea=xxx;//根据每次循环,其值不一样 這兩個值從哪來?如果有另外表存著,直接用JOIN就會快很多.