Поделиться через


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. В ней также показано, как использовать методы BeginTransaction, Commitи Rollback .

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, связанный с транзакцией, или пустую ссылку, если транзакция больше не является допустимой.

(Унаследовано от DbTransaction)

Применяется к

См. также раздел