2013-07-11 64 views
0

所以基本上我試圖做一個購物車。如果交易成功,我需要更新產品金額。我使用數組列表和循環來循環通過我的購物車中的物品:在MySQL中執行表格列的計算

ArrayList<shopManagement.entity.Cart> ft = cart.getCartItems(); 
     for (int count = 0; count < ft.size(); count++) { 
      int quantity = ft.get(count).getQuantity(); 
      int prodID = ft.get(count).getProdID(); 
      shopManagement.entity.Cart cart3 = new shopManagement.entity.Cart(quantity, prodID); 
      boolean success = cart3.updateProdQuantity(); 
     } 

我得到每個產品的購買數量。之後,我需要使用數量變量減去每個產品的原始數量。於是,我拿出這條SQL語句:

public boolean updateProdQuantity(){ 
    boolean success = false; 
    DBController db = new DBController(); 
    db.getConnection(); 
    String sql = "UPDATE sm_product SET productQuantity = " + input + " WHERE productID = " + prodID + ""; 

    if (db.updateRequest(sql) == 1) { 
     success = true; 
    } 
    db.terminate(); 
    return success; 
} 

,但它只是更新我原來的產品量在車量。它從不執行減號。我不知道該怎麼寫,所以我的productQuantity列可以減去一個變量。提前致謝。

+0

你的意思是這樣的:'SET productQuantity = productQuantity-「+ input +」'? –

+0

雅這就是我想要做的 –

+0

,這是行不通的? –

回答

0
String sql = "UPDATE sm_product SET productQuantity = productQuantity-" + input + " WHERE productID = " + prodID + ""; 
+0

感謝它的作品 –

+0

不客氣! –