OracleTransaction クラス

定義

データベースで行われるトランザクションを表します。

public ref class OracleTransaction sealed : MarshalByRefObject, IDisposable, System::Data::IDbTransaction
public ref class OracleTransaction sealed : System::Data::Common::DbTransaction
public sealed class OracleTransaction : MarshalByRefObject, IDisposable, System.Data.IDbTransaction
public sealed class OracleTransaction : System.Data.Common.DbTransaction
type OracleTransaction = class
    inherit MarshalByRefObject
    interface IDbTransaction
    interface IDisposable
type OracleTransaction = class
    inherit DbTransaction
Public NotInheritable Class OracleTransaction
Inherits MarshalByRefObject
Implements IDbTransaction, IDisposable
Public NotInheritable Class OracleTransaction
Inherits DbTransaction
継承
OracleTransaction
継承
実装

次の例では、 と を OracleConnection 作成します OracleTransaction。 また、および Rollback メソッドのBeginTransactionCommit使用方法も示します。

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.");
        }
    }
}
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

注釈

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

プロパティ

Connection

トランザクションに関連付けられている OracleConnection オブジェクトを指定します。

DbConnection

派生クラス内でオーバーライドされた場合、トランザクションに関連付けられている DbConnection オブジェクトを取得します。

(継承元 DbTransaction)
IsolationLevel

このトランザクションの IsolationLevel を指定します。

SupportsSavepoints

この DbTransaction インスタンスでデータベースのセーブポイントがサポートされているかどうかを示す値を取得します。 false の場合、メソッド SaveAsync(String, CancellationToken)RollbackAsync(String, CancellationToken)ReleaseAsync(String, CancellationToken) およびそれらの同期版では NotSupportedException がスローされることが想定されます。

(継承元 DbTransaction)

メソッド

Commit()

SQL データベース トランザクションをコミットします。

CommitAsync(CancellationToken)

データベース トランザクションを非同期にコミットします。

(継承元 DbTransaction)
CreateObjRef(Type)

リモート オブジェクトとの通信に使用するプロキシの生成に必要な情報をすべて格納しているオブジェクトを作成します。

(継承元 MarshalByRefObject)
Dispose()

このオブジェクトに使用されているリソースを解放します。

Dispose()

DbTransaction で使用されるアンマネージ リソースを解放します。

(継承元 DbTransaction)
Dispose(Boolean)

DbTransaction によって使用されているアンマネージド リソースを解放し、オプションでマネージド リソースも解放します。

(継承元 DbTransaction)
DisposeAsync()

トランザクション オブジェクトを非同期に破棄します。

(継承元 DbTransaction)
Equals(Object)

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。

(継承元 Object)
GetHashCode()

既定のハッシュ関数として機能します。

(継承元 Object)
GetLifetimeService()
古い.

対象のインスタンスの有効期間ポリシーを制御する、現在の有効期間サービス オブジェクトを取得します。

(継承元 MarshalByRefObject)
GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
InitializeLifetimeService()
古い.

このインスタンスの有効期間ポリシーを制御する有効期間サービス オブジェクトを取得します。

(継承元 MarshalByRefObject)
MemberwiseClone()

現在の Object の簡易コピーを作成します。

(継承元 Object)
MemberwiseClone(Boolean)

現在の MarshalByRefObject オブジェクトの簡易コピーを作成します。

(継承元 MarshalByRefObject)
Release(String)

現在のトランザクションで以前に定義されたセーブポイントを破棄します。 これにより、システムによってトランザクションが終了する前にリソースの一部を再利用できます。

(継承元 DbTransaction)
ReleaseAsync(String, CancellationToken)

現在のトランザクションで以前に定義されたセーブポイントを破棄します。 これにより、システムによってトランザクションが終了する前にリソースの一部を再利用できます。

(継承元 DbTransaction)
Rollback()

トランザクションを保留状態からロールバックします。

Rollback(String)

指定したセーブポイントが確立された後に実行されたすべてのコマンドをロールバックします。

(継承元 DbTransaction)
RollbackAsync(CancellationToken)

トランザクションを保留状態から非同期にロールバックします。

(継承元 DbTransaction)
RollbackAsync(String, CancellationToken)

指定したセーブポイントが確立された後に実行されたすべてのコマンドをロールバックします。

(継承元 DbTransaction)
Save(String)

トランザクションにセーブポイントを作成します。 これにより、セーブポイントが確立された後に実行されるすべてのコマンドがロールバックされ、トランザクションの状態がセーブポイントの時点の状態に復元されます。

(継承元 DbTransaction)
SaveAsync(String, CancellationToken)

トランザクションにセーブポイントを作成します。 これにより、セーブポイントが確立された後に実行されるすべてのコマンドがロールバックされ、トランザクションの状態がセーブポイントの時点の状態に復元されます。

(継承元 DbTransaction)
ToString()

現在のオブジェクトを表す文字列を返します。

(継承元 Object)

明示的なインターフェイスの実装

IDbTransaction.Connection

トランザクションに関連付けられた DbConnection オブジェクト、またはトランザクションが無効になった場合に null 参照を取得します。

(継承元 DbTransaction)

適用対象

こちらもご覧ください