1. 程式人生 > >Java web專案sql語句引數問題

Java web專案sql語句引數問題

做課程設計時候,由於要實現"商品加入購物車後庫存自動減少"功能,寫了個函式update_stock。

裡面有用到sql語句,同時函式引數包括(num,ID),即購買數量和商品ID

第一次寫的sql語句如下:

String sql = "update items set number=number-num where id='ID';";  (這是錯誤的)

(number為表items裡面的屬性,表示庫存)

後來發現函式執行後,資料庫items表庫存並未改變。

後搜尋原因:

String sql=" " 的形式 引號內只能是固定值。 例如:

String sql="update items set number=1 where id='3';";

解決方法:

1) String.format()方法

String sql=String.format("update items set number=number-%d where id=%d;",num,ID);

2) +號連線(相當於字串拼接)

程式碼: