在程式中啟用事務

2022-03-03 02:24:04 字數 1299 閱讀 7907

在專案中很多時候都要用到事務,比如新增一條商品,要把這麼商品的關鍵字插入到關鍵字表裡去

首先執行一和sql,如果執行失敗則馬上返回。

否則開始事務執行下面的語句...

int i=new command().executenonquery(....)

//如果執行失敗則直接返回

if(i<0)

return false....

//開啟事務

sqlconnection con = new sqlconnection(sqlhelper.connectionstring);

con.open();

sqltransaction tran = con.begintransaction();

try如果執行失敗

事務回滾,返回

if(j<0)

否則繼續執行....

最後如都執行成功

//提交事務

tran.commit();

return true;

**參照:

1

object o= sqlhelper.executescalar(sqlhelper.connectionstring, commandtype.text,「insert into ...."

, new sqlparamter );

2if (o== null || o==dbnull.value)36

//啟用事物 sqlconnection con = new sqlconnection(sqlhelper.connectionstring);

7con.open();

8 sqltransaction tran =con.begintransaction();

9try

1017 sqlparameter paramcategory = ;

18int j = sqlhelper.executenonquery(sqlhelper.connectionstring, commandtype.text, "

insert into ..

",paramcategory);

19if (j < 0)//

失敗回滾

2024

//提交事務

25tran.commit();

26return

true;27

}28catch

2933

finally

34

view code

sqlite 啟用事務

插入3000條資料,兩分鐘沒插完。然後去網上找辦法,才知道大批量資料插入需要用事物,否則效率會很低。原文如下 insert時,沒有使用事務的sqlite速度的確很慢 啟用事務後,速度大大的提高了。1 啟用事務 php link sqlite open c test.db sqlite query l...

在C 程式設計用事務

當然也可以在sql server用事務來處理,這裡線談在c 的事務程式設計。using system using system.collections.generic using system.componentmodel using system.data using system.drawing...

在儲存過程中運用事務

在儲存過程中運用事務 create database study use study create table peopleinfor 使用者資訊表 id int primary key identity 1001,1 主鍵自動增長 name1 nvarchar 30 使用者名稱 ymoney mo...