OdbcTransaction Klass

Definition

Representerar en SQL-transaktion som ska göras i en datakälla. Det går inte att ärva den här klassen.

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

Exempel

I följande exempel skapas en OdbcConnection och en OdbcTransaction. Det visar också hur du använder BeginTransactionmetoderna , Commitoch Rollback .

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

Kommentarer

Programmet skapar ett OdbcTransaction objekt genom att anropa BeginTransaction objektet OdbcConnection . Alla efterföljande åtgärder som är associerade med transaktionen (till exempel att checka in eller avbryta transaktionen) utförs på OdbcTransaction objektet.

Egenskaper

Name Description
Connection

Hämtar objektet OdbcConnection som är associerat med transaktionen eller null om transaktionen inte längre är giltig.

DbConnection

När det åsidosättas i en härledd klass hämtar det objekt som DbConnection är associerat med transaktionen.

(Ärvd från DbTransaction)
IsolationLevel

Anger för den IsolationLevel här transaktionen.

Metoder

Name Description
Commit()

Genomför databastransaktionen.

CreateObjRef(Type)

Skapar ett objekt som innehåller all relevant information som krävs för att generera en proxy som används för att kommunicera med ett fjärrobjekt.

(Ärvd från MarshalByRefObject)
Dispose()

Släpper de ohanterade resurser som används av DbTransaction.

(Ärvd från DbTransaction)
Dispose(Boolean)

Släpper de ohanterade resurser som används av DbTransaction och släpper eventuellt de hanterade resurserna.

(Ärvd från DbTransaction)
Equals(Object)

Avgör om det angivna objektet är lika med det aktuella objektet.

(Ärvd från Object)
GetHashCode()

Fungerar som standard-hash-funktion.

(Ärvd från Object)
GetLifetimeService()

Hämtar det aktuella livslängdstjänstobjektet som styr livslängdsprincipen för den här instansen.

(Ärvd från MarshalByRefObject)
GetType()

Hämtar den aktuella instansen Type .

(Ärvd från Object)
InitializeLifetimeService()

Hämtar ett tjänstobjekt för livslängd för att styra livslängdsprincipen för den här instansen.

(Ärvd från MarshalByRefObject)
MemberwiseClone()

Skapar en ytlig kopia av den aktuella Object.

(Ärvd från Object)
MemberwiseClone(Boolean)

Skapar en ytlig kopia av det aktuella MarshalByRefObject objektet.

(Ärvd från MarshalByRefObject)
Rollback()

Återställer en transaktion från ett väntande tillstånd.

ToString()

Returnerar en sträng som representerar det aktuella objektet.

(Ärvd från Object)

Explicita gränssnittsimplementeringar

Name Description
IDbTransaction.Connection

Hämtar objektet DbConnection som är associerat med transaktionen eller en null-referens om transaktionen inte längre är giltig.

(Ärvd från DbTransaction)
IDisposable.Dispose()

Detta API stöder produktinfrastrukturen och är inte avsett att användas direkt från koden.

Frigör de resurser som används av den aktuella instansen OdbcTransaction av klassen.

Gäller för

Se även