如何在Java程式中更新資料庫同一表的兩條資料

2021-07-04 03:02:15 字數 1225 閱讀 1599

1樓:匿名使用者

ps=con.preparestatement("update bank set money=? where id=?");

ps.setint(1,receivemoney);

ps.setstring(2, sureidfield.gettext());

int j = ps.executeupdate();

ps=con.preparestatement("update bank set money=? where id=?");

ps.setint(1,sendmoney);

ps.setstring(2, this.loginid);

int i=ps.executeupdate();

if(i>0 && j>0)

這樣試試呢。

2樓:匿名使用者

要考慮事務的原子性,for exampletrycatch(sqlexception e)//如果出錯,回滾兩sql之前

catch(exception e)

}應該能同時進行兩條資料的插入阿

3樓:匿名使用者

問題解決關鍵 採用addbatch()方法stmt = conn.createstatement();

string sql1=" update .....";

string sql2=" update .... ";

string sql3=" update .... ";

string sql4="update ...";

stmt.addbatch(sql1);

stmt.addbatch(sql2);

stmt.addbatch(sql3);

stmt.addbatch(sql4);

stmt.executebatch();

這樣一次就可以執行多個sql語句了。

preparestatement中也有addbatch方法,你查下api

這樣寫的好處的,採用的乙個事務。一旦出錯可以一起回滾。

要是分2次執行的話。容易出現1錯1對被執行。

4樓:

mailluzhou, wuzhemeng1983的實現都能夠解決問題,個人 wuzhemeng1983的寫法好些。preparestatement能提高一些效率。至於事務方面,我認為mailluzhou的方法也能滿足這樣的需求。

C Access程式中插入資料成功,資料庫中卻沒有資料

你的問題樓上已經解決了 access資料庫真正被改資料的是你debug下面的 每當你用vs2005執行除錯程式都會從你指定的目錄拷貝乙份到debug下面 希望你直接執行debug下面的exe檔案 你會發現沒錯的 這是乙個很常見的問題 第一次用access都會碰到的 這個問題我同學也遇到過,確實是有此...

informix資料庫如何建立資料庫,建立資料庫表,建立索引

為t kc表的cname欄位建立索引。最後當然主鍵當然是sid了 一定要標好哦 informix第乙個真正支援sql語言的關聯式資料庫產品是informix se standardengine 1 有輸入輸出 create procedure pnormalparam f1 integer,f2 v...

如何選擇合適的資料庫,如何選擇資料庫?

如何選擇資料庫 一般來講,資料分析的查詢不會直接從生產環境的資料庫來讀取資料,一方面是影響線上效能,另一方面是oltp的表結構設計更多的是面向插入,而不是讀取。如何來選擇合適的資料庫做資料分析呢?本文給出了四方面的考量,拋磚引玉。1.客戶要分析什麼樣的資料 2.客戶分析的資料量是多少 3.客戶工程師...