Aracılığıyla paylaş


OdbcTransaction Sınıf

Tanım

Veri kaynağında yapılacak bir SQL işlemini temsil eder. Bu sınıf devralınamaz.

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
Devralma
Devralma
OdbcTransaction
Uygulamalar

Örnekler

Aşağıdaki örnek bir OdbcConnection ve bir OdbcTransactionoluşturur. Ayrıca BeginTransaction, Commitve Rollback yöntemlerinin nasıl kullanılacağını da gösterir.

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

Açıklamalar

Uygulama, OdbcConnection nesnesinde BeginTransaction çağırarak bir OdbcTransaction nesnesi oluşturur. İşlemle ilişkili sonraki tüm işlemler (örneğin, işlemi işleme veya durdurma) OdbcTransaction nesnesi üzerinde gerçekleştirilir.

Özellikler

Connection

İşlemle ilişkili OdbcConnection nesnesini alır veya işlem artık geçerli değilse null.

DbConnection

Türetilmiş bir sınıfta geçersiz kılındığında, işlemle ilişkili DbConnection nesnesini alır.

(Devralındığı yer: DbTransaction)
IsolationLevel

Bu işlem için IsolationLevel belirtir.

SupportsSavepoints

Bu DbTransaction örneğin veritabanı kayıt noktalarını destekleyip desteklemediğini gösteren bir değer alır. falseise, SaveAsync(String, CancellationToken)RollbackAsync(String, CancellationToken) ve ReleaseAsync(String, CancellationToken) yöntemlerinin yanı sıra zaman uyumlu karşılıklarının NotSupportedExceptionoluşturması beklenir.

(Devralındığı yer: DbTransaction)

Yöntemler

Commit()

Veritabanı işlemini işler.

CommitAsync(CancellationToken)

Zaman uyumsuz olarak veritabanı işlemini işler.

(Devralındığı yer: DbTransaction)
CreateObjRef(Type)

Uzak bir nesneyle iletişim kurmak için kullanılan bir ara sunucu oluşturmak için gereken tüm ilgili bilgileri içeren bir nesne oluşturur.

(Devralındığı yer: MarshalByRefObject)
Dispose()

DbTransactiontarafından kullanılan yönetilmeyen kaynakları serbest bırakır.

(Devralındığı yer: DbTransaction)
Dispose(Boolean)

DbTransaction tarafından kullanılan yönetilmeyen kaynakları serbest bırakır ve isteğe bağlı olarak yönetilen kaynakları serbest bırakır.

(Devralındığı yer: DbTransaction)
DisposeAsync()

İşlem nesnesini zaman uyumsuz olarak batırıyor.

(Devralındığı yer: DbTransaction)
Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetLifetimeService()
Geçersiz.

Bu örnek için yaşam süresi ilkesini denetleen geçerli yaşam süresi hizmet nesnesini alır.

(Devralındığı yer: MarshalByRefObject)
GetType()

Geçerli örneğin Type alır.

(Devralındığı yer: Object)
InitializeLifetimeService()
Geçersiz.

Bu örneğin yaşam süresi ilkesini denetlemek için bir yaşam süresi hizmet nesnesi alır.

(Devralındığı yer: MarshalByRefObject)
MemberwiseClone()

Geçerli Objectbasit bir kopyasını oluşturur.

(Devralındığı yer: Object)
MemberwiseClone(Boolean)

Geçerli MarshalByRefObject nesnesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: MarshalByRefObject)
Release(String)

Geçerli işlemde daha önce tanımlanmış bir kayıt noktasını yok eder. Bu, sistemin işlem sona ermeden önce bazı kaynakları geri kazanmasını sağlar.

(Devralındığı yer: DbTransaction)
ReleaseAsync(String, CancellationToken)

Geçerli işlemde daha önce tanımlanmış bir kayıt noktasını yok eder. Bu, sistemin işlem sona ermeden önce bazı kaynakları geri kazanmasını sağlar.

(Devralındığı yer: DbTransaction)
Rollback()

Bekleyen durumdan bir işlemi geri alır.

Rollback(String)

Belirtilen kayıt noktası oluşturulduktan sonra yürütülen tüm komutları geri alır.

(Devralındığı yer: DbTransaction)
RollbackAsync(CancellationToken)

Bekleyen bir durumdan bir işlemi zaman uyumsuz olarak geri alır.

(Devralındığı yer: DbTransaction)
RollbackAsync(String, CancellationToken)

Belirtilen kayıt noktası oluşturulduktan sonra yürütülen tüm komutları geri alır.

(Devralındığı yer: DbTransaction)
Save(String)

İşlemde bir kayıt noktası oluşturur. Bu, kayıt noktası oluşturulduktan sonra yürütülen tüm komutların geri alınmasına olanak tanır ve işlem durumunu kayıt noktası sırasındaki durumuna geri yükler.

(Devralındığı yer: DbTransaction)
SaveAsync(String, CancellationToken)

İşlemde bir kayıt noktası oluşturur. Bu, kayıt noktası oluşturulduktan sonra yürütülen tüm komutların geri alınmasına olanak tanır ve işlem durumunu kayıt noktası sırasındaki durumuna geri yükler.

(Devralındığı yer: DbTransaction)
ToString()

Geçerli nesneyi temsil eden bir dize döndürür.

(Devralındığı yer: Object)

Belirtik Arabirim Kullanımları

IDbTransaction.Connection

İşlemle ilişkili DbConnection nesnesini veya işlem artık geçerli değilse null başvuruyu alır.

(Devralındığı yer: DbTransaction)
IDisposable.Dispose()

Bu API, ürün altyapısını destekler ve doğrudan kodunuzdan kullanıma yönelik değildir.

OdbcTransaction sınıfının geçerli örneği tarafından kullanılan kaynakları serbest bırakır.

Uzantı Metotları

ConfigureAwait(IAsyncDisposable, Boolean)

Zaman uyumsuz bir atılabilir öğeden döndürülen görevlerde awaits işleminin nasıl gerçekleştirileceğini yapılandırılır.

Şunlara uygulanır

Ayrıca bkz.