一个简单的求教问题,谢谢各位高人!

liuxin5128 发布于 2014/08/08 18:14
阅读 102
收藏 0

用java从数据库中获取取数据,用五个查询语句将数据存储在几个数组中,但在用数组中的数据进行计算时,几个数组中的数据都是最后一个数组的值,请教各位高人,是一个什么原因!

前面代码省略

try{
链接数据库
Connection conn=DriverManager.getConnection(url, user, password);
//执行SQL语句
Statement stmt = conn.createStatement();//
conn.setAutoCommit(false);// 
       
       
//最大值    
    for(int i=0;i<8;i++){                          //
      String StrFact=FactorName0[i];                 //

      String [] strSqlmax= new String [length0[i]];   //1、 最大值

      String [] strSqlmin= new String [length0[i]];   //2、 最小值 
        if (i==0){

        strSqlmax[0]="select  max(Total_Num_News )  from Act where FactorName= +'"+StrFact+"'"; 
        strSqlmax[1]="select  max(Total_Num_Clicking )  from Act where FactorName= +'"+StrFact+"'"; 
        strSqlmax[2]="select  max(Total_Num_Comment )  from Act where FactorName= +'"+StrFact+"'"; 
        strSqlmax[3]="select  max(Total_Num_Relay )  from Act where FactorName= +'"+StrFact+"'"; 
        strSqlmax[4]="select  max(Total_Num_Reputation )  from Act where FactorName= +'"+StrFact+"'";  

        strSqlmin[0]="select  min(Total_Num_News )  from Act where FactorName= +'"+StrFact+"'"; 
        strSqlmin[1]="select  min(Total_Num_Clicking )  from Act where FactorName= +'"+StrFact+"'"; 
        strSqlmin[2]="select  min(Total_Num_Comment )  from Act where FactorName= +'"+StrFact+"'"; 
        strSqlmin[3]="select  min(Total_Num_Relay )  from Act where FactorName= +'"+StrFact+"'"; 
        strSqlmin[4]="select  min(Total_Num_Reputation )  from Act where FactorName= +'"+StrFact+"'";  
                }
      if(i>0){
  
  strSqlmax[0]="select  max(Total_Num_Post )  from Act where FactorName= +'"+StrFact+"'";  //确
strSqlmax[1]="select  max(Total_Num_Clicking )  from Act where FactorName= +'"+StrFact+"'"; 
strSqlmax[2]="select  max(Total_Num_Comment )  from Act where FactorName= +'"+StrFact+"'";  
 strSqlmax[3]="select  max(Total_Num_Relay )  from Act where FactorName= +'"+StrFact+"'"; 
 strSqlmax[4]="select  max(Total_Num_Attention )  from Act where FactorName= +'"+StrFact+"'"; 
   strSqlmax[5]="select  max(Total_Num_Fensi )  from Act where FactorName= +'"+StrFact+"'";  //确定
   strSqlmax[6]="select  max(Total_Num_Reputation )  from Act where FactorName= +'"+StrFact+"'"; 
/**定义最小值查询语句***/  
        strSqlmin[0]="select  min(Total_Num_Post )  from Act where FactorName= +'"+StrFact+"'";  //确
        strSqlmin[1]="select  min(Total_Num_Clicking )  from Act where FactorName= +'"+StrFact+"'";  
        strSqlmin[2]="select  min(Total_Num_Comment )  from Act where FactorName= +'"+StrFact+"'"; 
        strSqlmin[3]="select  min(Total_Num_Relay )  from Act where FactorName= +'"+StrFact+"'"; 
        strSqlmin[4]="select  min(Total_Num_Attention )  from Act where FactorName= +'"+StrFact+"'"; 
        strSqlmin[5]="select  min(Total_Num_Fensi )  from Act where FactorName= +'"+StrFact+"'"; 
        strSqlmin[6]="select  min(Total_Num_Reputation )  from Act where FactorName= +'"+StrFact+"'";  
      }
      
     
      for (int j=0;j<length0[i];j++){        //   
/**获取最大值***/  
      ResultSet rsmax=stmt.executeQuery(strSqlmax[j]);           //对查询结果赋值;                 
             while (rsmax.next()){
          max[i][j]=rsmax.getInt(1);//第一个因子的五个指标量,
         // System.out.println("max="+max[i][j]);          
          }
/**获取最小值***/ 
             ResultSet rsmin=stmt.executeQuery(strSqlmin[j]);           //对查询结果赋值;                 
             while (rsmin.next()){
          min[i][j]=rsmin.getInt(1);//第一个因子的五个指标量,
        //  System.out.println("min="+min[i][j]);          
          }   
           
    }         
    } 

     
      
        stmt.close();//关闭数据库
        conn.close();
  
//    }    
        

加载中
返回顶部
顶部