人気ブログランキング | 話題のタグを見る
(VB.Net)ADO.NetでOLEDBのトランザクション
ADO.Netでトランザクションするコードです。

'接続型でDBにつなぐ
Dim cn As New OleDb.OleDbConnection
cn.ConnectionString = テーブルアダプタ.Connection.ConnectionString

'コネクションを開く
cn.Open()
 
'コマンドオブジェクト生成
Dim cmd As New OleDb.OleDbCommand()

cmd.Connection = cn
 
'------トランザクション開始-------
Dim trans As OleDb.OleDbTransaction = cn.BeginTransaction()

'コマンドオブジェクトにトランザクション関連付け
cmd.Transaction = trans
 
Try
Dim sql As String = "DELETE * FROM ZipCode"

cmd.CommandText = sql
cmd.ExecuteNonQuery()

'-------トランザクションコミット-------
trans.Commit()

Catch ex As Exception
'-------失敗時はロールバック-------

trans.Rollback()
Finally
'DB後処理
cn.Close()
End Try

MSDNによると、ADO.Netによるトランザクションの基本的流れは下記のようになるみたいです。
1.Connection オブジェクトの BeginTransaction メソッドを呼び出してTransactionオブジェクトを取得します。
2.Command の Transaction プロパティに Transaction オブジェクトを割り当てます。
3.Transaction オブジェクトの Commit メソッドを呼び出して、トランザクションを実行するか、または Rollback メソッドを呼び出してトランザクションをキャンセルします。

かなり簡単にできますね。

参考:ADO.NET によるトランザクションの実行
by jehoshaphat | 2008-12-16 00:00 | .Net開発


<< (.Net)Control.R... (SQL)顧客毎に日別で売上回... >>