OdbcTransaction Clase

Definición

Representa una transacción SQL que debe realizarse en un origen de datos.Represents an SQL transaction to be made at a data source. Esta clase no puede heredarse.This class cannot be inherited.

public ref class OdbcTransaction sealed : System::Data::Common::DbTransaction
public ref class OdbcTransaction sealed : MarshalByRefObject, IDisposable, System::Data::IDbTransaction
public sealed class OdbcTransaction : System.Data.Common.DbTransaction
public sealed class OdbcTransaction : MarshalByRefObject, IDisposable, System.Data.IDbTransaction
type OdbcTransaction = class
    inherit DbTransaction
type OdbcTransaction = class
    inherit MarshalByRefObject
    interface IDbTransaction
    interface IDisposable
Public NotInheritable Class OdbcTransaction
Inherits DbTransaction
Public NotInheritable Class OdbcTransaction
Inherits MarshalByRefObject
Implements IDbTransaction, IDisposable
Herencia
OdbcTransaction
Herencia
Herencia
OdbcTransaction
Implementaciones

Ejemplos

En el ejemplo siguiente se crea un OdbcConnection y un OdbcTransaction .The following example creates an OdbcConnection and an OdbcTransaction. También se muestra cómo usar los BeginTransaction métodos, Commit y Rollback .It also demonstrates how to use the BeginTransaction, Commit, and Rollback methods.

public static void ExecuteTransaction(string connectionString)
{
    using (OdbcConnection connection =
               new OdbcConnection(connectionString))
    {
        OdbcCommand command = new OdbcCommand();
        OdbcTransaction transaction = null;

        // Set the Connection to the new OdbcConnection.
        command.Connection = connection;

        // Open the connection and execute the transaction.
        try
        {
            connection.Open();

            // Start a local transaction
            transaction = connection.BeginTransaction();

            // Assign transaction object for a pending local transaction.
            command.Connection = connection;
            command.Transaction = transaction;

            // Execute the commands.
            command.CommandText =
                "Insert into Region (RegionID, RegionDescription) VALUES (100, 'Description')";
            command.ExecuteNonQuery();
            command.CommandText =
                "Insert into Region (RegionID, RegionDescription) VALUES (101, 'Description')";
            command.ExecuteNonQuery();

            // Commit the transaction.
            transaction.Commit();
            Console.WriteLine("Both records are written to database.");
        }
        catch (Exception ex)
        {
            Console.WriteLine(ex.Message);
            try
            {
                // Attempt to roll back the transaction.
                transaction.Rollback();
            }
            catch
            {
                // Do nothing here; transaction is not active.
            }
        }
        // The connection is automatically closed when the
        // code exits the using block.
    }
Public Sub ExecuteTransaction(ByVal connectionString As String)

    Using connection As New OdbcConnection(connectionString)
        Dim command As New OdbcCommand()
        Dim transaction As OdbcTransaction

        ' Set the Connection to the new OdbcConnection.
        command.Connection = connection

        ' Open the connection and execute the transaction.
        Try
            connection.Open()

            ' Start a local transaction.
            transaction = connection.BeginTransaction()

            ' Assign transaction object for a pending local transaction.
            command.Connection = connection
            command.Transaction = transaction

            ' Execute the commands.
            command.CommandText = _
                "Insert into Region (RegionID, RegionDescription) VALUES (100, 'Description')"
            command.ExecuteNonQuery()
            command.CommandText = _
                "Insert into Region (RegionID, RegionDescription) VALUES (101, 'Description')"
            command.ExecuteNonQuery()

            ' Commit the transaction.
            transaction.Commit()
            Console.WriteLine("Both records are written to database.")

        Catch ex As Exception
            Console.WriteLine(ex.Message)
            ' Try to rollback the transaction
            Try
                transaction.Rollback()

            Catch
                ' Do nothing here; transaction is not active.
            End Try
        End Try
        ' The connection is automatically closed when the
        ' code exits the Using block.
    End Using
End Sub

Comentarios

La aplicación crea un OdbcTransaction objeto llamando a BeginTransaction en el OdbcConnection objeto.The application creates an OdbcTransaction object by calling BeginTransaction on the OdbcConnection object. Todas las operaciones posteriores asociadas a la transacción (por ejemplo, la confirmación o la anulación de la transacción) se realizan en el OdbcTransaction objeto.All subsequent operations associated with the transaction (for example, committing or aborting the transaction) are performed on the OdbcTransaction object.

Propiedades

Connection

Obtiene el objeto OdbcConnection asociado a la transacción o null si la transacción ya no es válida.Gets the OdbcConnection object associated with the transaction, or null if the transaction is no longer valid.

DbConnection

Cuando se invalida en una clase derivada, obtiene el objeto DbConnection asociado a la transacción.When overridden in a derived class, gets the DbConnection object associated with the transaction.

(Heredado de DbTransaction)
IsolationLevel

Especifica IsolationLevel para esta transacción.Specifies the IsolationLevel for this transaction.

SupportsSavepoints

Obtiene un valor que indica si esta instancia de DbTransaction admite los puntos de retorno de la base de datos.Gets a value that indicates whether this DbTransaction instance supports database savepoints. Si false, se espera que los métodos SaveAsync(String, CancellationToken), RollbackAsync(String, CancellationToken) y ReleaseAsync(String, CancellationToken), así como sus contrapartes sincrónicas, generen NotSupportedException.If false, the methods SaveAsync(String, CancellationToken), RollbackAsync(String, CancellationToken) and ReleaseAsync(String, CancellationToken) as well as their synchronous counterparts are expected to throw NotSupportedException.

(Heredado de DbTransaction)

Métodos

Commit()

Confirma la transacción de base de datos.Commits the database transaction.

CommitAsync(CancellationToken)

Confirma de forma asincrónica la transacción de base de datos.Asynchronously commits the database transaction.

(Heredado de DbTransaction)
CreateObjRef(Type)

Crea un objeto que contiene toda la información relevante necesaria para generar un proxy utilizado para comunicarse con un objeto remoto.Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Heredado de MarshalByRefObject)
Dispose()

Libera los recursos no administrados que DbTransaction usa.Releases the unmanaged resources used by the DbTransaction.

(Heredado de DbTransaction)
Dispose(Boolean)

Libera los recursos no administrados que usa DbTransaction y, de forma opcional, libera los recursos administrados.Releases the unmanaged resources used by the DbTransaction and optionally releases the managed resources.

(Heredado de DbTransaction)
DisposeAsync()

Desecha de forma asincrónica el objeto de transacción.Asynchronously diposes the transaction object.

(Heredado de DbTransaction)
Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.Determines whether the specified object is equal to the current object.

(Heredado de Object)
GetHashCode()

Sirve como la función hash predeterminada.Serves as the default hash function.

(Heredado de Object)
GetLifetimeService()
Obsoleto.

Recupera el objeto de servicio de duración actual que controla la directiva de duración de esta instancia.Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Heredado de MarshalByRefObject)
GetType()

Obtiene el Type de la instancia actual.Gets the Type of the current instance.

(Heredado de Object)
InitializeLifetimeService()
Obsoleto.

Obtiene un objeto de servicio de duración para controlar la directiva de duración de esta instancia.Obtains a lifetime service object to control the lifetime policy for this instance.

(Heredado de MarshalByRefObject)
MemberwiseClone()

Crea una copia superficial del Object actual.Creates a shallow copy of the current Object.

(Heredado de Object)
MemberwiseClone(Boolean)

Crea una copia superficial del objeto MarshalByRefObject actual.Creates a shallow copy of the current MarshalByRefObject object.

(Heredado de MarshalByRefObject)
Release(String)

Destruye un punto de retorno anteriormente definido en la transacción actual.Destroys a savepoint previously defined in the current transaction. Esto permite que el sistema reclame algunos recursos antes de que finalice la transacción.This allows the system to reclaim some resources before the transaction ends.

(Heredado de DbTransaction)
ReleaseAsync(String, CancellationToken)

Destruye un punto de retorno anteriormente definido en la transacción actual.Destroys a savepoint previously defined in the current transaction. Esto permite que el sistema reclame algunos recursos antes de que finalice la transacción.This allows the system to reclaim some resources before the transaction ends.

(Heredado de DbTransaction)
Rollback()

Revierte una transacción desde un estado pendiente.Rolls back a transaction from a pending state.

Rollback(String)

Revierte todos los comandos que se ejecutaron después de que se estableció el punto de retorno.Rolls back all commands that were executed after the specified savepoint was established.

(Heredado de DbTransaction)
RollbackAsync(CancellationToken)

Revierte de forma asincrónica una transacción desde un estado pendiente.Asynchronously rolls back a transaction from a pending state.

(Heredado de DbTransaction)
RollbackAsync(String, CancellationToken)

Revierte todos los comandos que se ejecutaron después de que se estableció el punto de retorno.Rolls back all commands that were executed after the specified savepoint was established.

(Heredado de DbTransaction)
Save(String)

Crea un punto de retorno en la transacción.Creates a savepoint in the transaction. Esto permite que se reviertan todos los comandos que se ejecutan después de que se estableció el punto de retorno, lo que restaura el estado de la transacción al estado que tenía en el momento del punto de retorno.This allows all commands that are executed after the savepoint was established to be rolled back, restoring the transaction state to what it was at the time of the savepoint.

(Heredado de DbTransaction)
SaveAsync(String, CancellationToken)

Crea un punto de retorno en la transacción.Creates a savepoint in the transaction. Esto permite que se reviertan todos los comandos que se ejecutan después de que se estableció el punto de retorno, lo que restaura el estado de la transacción al estado que tenía en el momento del punto de retorno.This allows all commands that are executed after the savepoint was established to be rolled back, restoring the transaction state to what it was at the time of the savepoint.

(Heredado de DbTransaction)
ToString()

Devuelve una cadena que representa el objeto actual.Returns a string that represents the current object.

(Heredado de Object)

Implementaciones de interfaz explícitas

IDbTransaction.Connection

Obtiene el objeto DbConnection asociado a la transacción o una referencia nula si la transacción ya no es válida.Gets the DbConnection object associated with the transaction, or a null reference if the transaction is no longer valid.

(Heredado de DbTransaction)
IDisposable.Dispose()

Esta API admite la infraestructura de producto y no está pensada para usarse directamente en el código.

Libera los recursos utilizados por la instancia actual de la clase OdbcTransaction.Releases the resources used by the current instance of the OdbcTransaction class.

Se aplica a

Consulte también