比较arraylist值并在java中更新mysql

时间:2014-03-27 10:16:10

标签: java mysql arraylist

我正在使用mysql和java,我有一些带有一些值的arraylist,我有一些列的mysql表。 示例:

Arraylist valAry = new ArrayList();
valAry.add('25');
valAry.add('28');

表值:

现有的新表可能是

**newtable**
id  val1  min_val1  max_val1  val2 min_val1  max_val1  time_stamp
 1   24      9         24       27     14        35     2014-03-27 15:06:00      

由此我想用我当前的arraylist检查 newTable 并更新newtable值。

id  val1  min_val1  max_val1  val2 min_val1  max_val1  time_stamp
 1   25      9         25       28     14        35     2014-03-27 15:07:00      

这里我只列出了arraylist中的2个值,将来它可能会变成5或15或30,它可能是什么,就像表列将自动生成一样。

所以使用单个查询比较更新语句来更新表。

请帮助我。

2 个答案:

答案 0 :(得分:0)

更新表 set val1 = valAry.get(new Integer.valueOf(25))and val2 = valAry.get(new Integer.valueOf(28)) 其中id = 1;

答案 1 :(得分:0)

对不起伙计们,我尝试了以下方法从java端更新表它的工作原理。有没有其他最好的方法可以帮助我使用....

StringBuilder sb = new StringBuilder(128);
        sb.append("update newtable set ");
        for(int g=0;g<valAry.size();g++){

            sb.append("val1 =").append(valAry.get(g)).append(", min_val1 = IF (min_val1 <").append(valAry.get(g)).append(", min_val1 , ").append(valAry.get(g)).append(") , max_val1 = IF (max_val1 > ").append(valAry.get(g)).append(", max_val1 , ").append(valAry.get(g)).append("),");

        }

        sb.append("time_stamp = '").append(time_stamp).append("' where id = 1");

谢谢你们所有人......