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. В нем также показано, как использовать BeginTransactionCommitметоды и 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 объект, вызывая BeginTransactionOracleConnection объект. Все последующие операции, связанные с транзакцией (например, фиксация или прерывание транзакции), выполняются в объекте OracleTransaction .

Свойства

Имя Описание
Connection

Указывает объект, связанный OracleConnection с транзакцией.

DbConnection

При переопределении в производном классе получает DbConnection объект, связанный с транзакцией.

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

Указывает IsolationLevel для этой транзакции.

Методы

Имя Описание
Commit()

Фиксирует транзакцию базы данных SQL.

CreateObjRef(Type)

Создает объект, содержащий все соответствующие сведения, необходимые для создания прокси-сервера, используемого для взаимодействия с удаленным объектом.

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

Освобождает ресурсы, используемые этим объектом.

Dispose()

Освобождает неуправляемые ресурсы, используемые параметром DbTransaction.

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

Освобождает неуправляемые ресурсы, используемые DbTransaction и при необходимости освобождает управляемые ресурсы.

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

Определяет, равен ли указанный объект текущему объекту.

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

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetLifetimeService()
Устаревшие..

Извлекает текущий объект службы времени существования, который управляет политикой времени существования для этого экземпляра.

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

Возвращает Type текущего экземпляра.

(Унаследовано от Object)
InitializeLifetimeService()
Устаревшие..

Получает объект службы времени существования для управления политикой времени существования для этого экземпляра.

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

Создает неглубокую копию текущей Object.

(Унаследовано от Object)
MemberwiseClone(Boolean)

Создает неглубокую копию текущего MarshalByRefObject объекта.

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

Откат транзакции из ожидающего состояния.

ToString()

Возвращает строку, представляющую текущий объект.

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

Явные реализации интерфейса

Имя Описание
IDbTransaction.Connection

DbConnection Возвращает объект, связанный с транзакцией, или пустую ссылку, если транзакция больше не действительна.

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

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

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