OracleTransaction クラス
アセンブリ: System.Data.OracleClient (system.data.oracleclient.dll 内)


アプリケーションは、OracleConnection オブジェクトで BeginTransaction を呼び出すことによって、OracleTransaction オブジェクトを作成します。トランザクションに関連付けられた後続の処理 (トランザクションのコミット、中止など) はすべて、OracleTransaction オブジェクトに対して実行します。

OracleConnection と OracleTransaction を作成する例を次に示します。BeginTransaction、Commit、Rollback の各メソッドの使い方も示します。
Public Sub RunOracleTransaction(ByVal connectionString As String) Using connection As New OracleConnection(connectionString) connection.Open() Dim command As OracleCommand = connection.CreateCommand() Dim transaction As OracleTransaction ' Start a local transaction transaction = connection.BeginTransaction(IsolationLevel.ReadCommitted) ' Assign transaction object for a pending local transaction command.Transaction = transaction Try command.CommandText = _ "INSERT INTO Dept (DeptNo, Dname, Loc) values (50, 'TECHNOLOGY', 'DENVER')" command.ExecuteNonQuery() command.CommandText = _ "INSERT INTO Dept (DeptNo, Dname, Loc) values (60, 'ENGINEERING', 'KANSAS CITY')" command.ExecuteNonQuery() transaction.Commit() Console.WriteLine("Both records are written to database.") Catch e As Exception transaction.Rollback() Console.WriteLine(e.ToString()) Console.WriteLine("Neither record was written to database.") End Try End Using End Sub
public void RunOracleTransaction(string connectionString) { using (OracleConnection connection = new OracleConnection(connectionString)) { connection.Open(); OracleCommand command = connection.CreateCommand(); OracleTransaction transaction; // Start a local transaction transaction = connection.BeginTransaction(IsolationLevel.ReadCommitted); // Assign transaction object for a pending local transaction command.Transaction = transaction; try { command.CommandText = "INSERT INTO Dept (DeptNo, Dname, Loc) values (50, 'TECHNOLOGY', 'DENVER')"; command.ExecuteNonQuery(); command.CommandText = "INSERT INTO Dept (DeptNo, Dname, Loc) values (60, 'ENGINEERING', 'KANSAS CITY')"; command.ExecuteNonQuery(); transaction.Commit(); Console.WriteLine("Both records are written to database."); } catch (Exception e) { transaction.Rollback(); Console.WriteLine(e.ToString()); Console.WriteLine("Neither record was written to database."); } } }

System.MarshalByRefObject
System.Data.Common.DbTransaction
System.Data.OracleClient.OracleTransaction


Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


- OracleTransaction クラスのページへのリンク