验证表中是否存在行并进行更新

时间:2015-11-09 15:12:33

标签: java sql insert-update

我想更新表中存在该行ID的行,如果表中没有ID,则插入新行。为此,请使用以下代码尝试验证表中存在的每一行,但它对我不起作用。代码总是报告该行存在,并且我的代码总是插入一个新行(而不是在行已存在时更新):

String sqlVerif="select * from calcul where idproduit="+codeP+" and EXTRACT(MONTH FROM date)="+MonthStock;
         ResultSet duplicateExists =stmt.executeQuery(sqlVerif);
         System.out.println(duplicateExists);

         if(duplicateExists.next()){
             System.out.println("je suis ici update");
             String sqlUpdate="UPDATE calcul set inventaire="+(this.GetInventaire(codeP))+(quantite)+",quantite="+this.GetQuantiteStock(codeP)+(quantite)+" where idproduit="+codeP+" and EXTRACT(MONTH FROM date)="+MonthStock;
             stmt.executeUpdate(sqlUpdate);

         }


         else{
              System.out.println("je suis ici insert");
         String sql1="INSERT INTO calcul (idproduit,inventaire,consomation,date,quantite,designation) "
               + "VALUES ('"+codeP+"',"+newQuant+","+0+",'"+datestock+"',"+newQuant+",'"+designation+"' );";

           stmt.executeUpdate(sql1);
         }

0 个答案:

没有答案