Freigeben über


SqlCeConnection.BeginTransaction-Methode

Hinweis: Dieser Namespace oder Member bzw. diese Klasse wird nur von .NET Framework, Version 1.1, unterstützt.

Beginnt eine Datenbanktransaktion.

Überladungsliste

Beginnt eine Datenbanktransaktion.

Wird nur von .NET Compact Framework unterstützt.

[Visual Basic] Overloads Public Function BeginTransaction() As SqlCeTransaction

[C#] public SqlCeTransaction BeginTransaction();

[C++] public: SqlCeTransaction* BeginTransaction();

[JScript] public function BeginTransaction() : SqlCeTransaction;

Beginnt eine Datenbanktransaktion mit dem aktuellen IsolationLevel-Wert.

Wird nur von .NET Compact Framework unterstützt.

[Visual Basic] Overloads Public Function BeginTransaction(IsolationLevel) As SqlCeTransaction

[C#] public SqlCeTransaction BeginTransaction(IsolationLevel);

[C++] public: SqlCeTransaction* BeginTransaction(IsolationLevel);

[JScript] public function BeginTransaction(IsolationLevel) : SqlCeTransaction;

Beispiel

[Visual Basic, C#] Im folgenden Beispiel werden eine SqlCeConnection und eine SqlCeTransaction erstellt. Anschließend wird die Verwendung der BeginTransaction-Methode, der Commit-Methode und der Rollback-Methode veranschaulicht.

[Visual Basic, C#] Hinweis   Dieses Beispiel veranschaulicht die Verwendung einer der überladenen Versionen von BeginTransaction. Weitere Beispiele finden Sie ggf. unter den einzelnen Themen zur Überladung.

 
Public Sub RunSqlCeTransaction(myConnString As String)
   Dim myConnection As New SqlCeConnection(myConnString)
   myConnection.Open()
   
   Dim myCommand As New SqlCeCommand()
   Dim myTrans As SqlCeTransaction
   
   ' Start a local transaction
   myTrans = myConnection.BeginTransaction()
   
   ' Must assign both transaction object and connection
   ' to Command object for a pending local transaction
   myCommand.Connection = myConnection
   myCommand.Transaction = myTrans
   
   Try
      myCommand.CommandText = "Insert into Region (RegionID, RegionDescription) VALUES (100, 'Description')"
      myCommand.ExecuteNonQuery()
      myCommand.CommandText = "Insert into Region (RegionID, RegionDescription) VALUES (101, 'Description')"
      myCommand.ExecuteNonQuery()
      myTrans.Commit()
   Catch 
      Try
         myTrans.Rollback()
      Catch e As SqlCeException
      ' Handle possible exception here
      End Try 
   Finally
      myConnection.Close()
   End Try
End Sub 

[C#] 
public void RunSqlCeTransaction(string myConnString) {
    SqlCeConnection myConnection = new SqlCeConnection(myConnString);
    myConnection.Open();

    SqlCeCommand myCommand = new SqlCeCommand();
    SqlCeTransaction myTrans;

    // Start a local transaction
    myTrans = myConnection.BeginTransaction();
    
    // Must assign both transaction object and connection
    // to Command object for a pending local transaction
    myCommand.Connection = myConnection;
    myCommand.Transaction = myTrans;

    try {
        myCommand.CommandText = "Insert into Region (RegionID, RegionDescription) VALUES (100, 'Description')";
        myCommand.ExecuteNonQuery();
        myCommand.CommandText = "Insert into Region (RegionID, RegionDescription) VALUES (101, 'Description')";
        myCommand.ExecuteNonQuery();
        myTrans.Commit();
    }
    catch(Exception) {
        try {
            myTrans.Rollback();
        }
        catch (SqlCeException) {
            // Handle possible exception here
        }
    }
    finally {
        myConnection.Close();
    }
}

[C++, JScript] Für C++ oder JScript ist kein Beispiel verfügbar. Klicken Sie zum Anzeigen eines Beispiels für Visual Basic oder C# in der linken oberen Ecke der Seite auf die Schaltfläche "Sprachfilter" Sprachfilter.

Siehe auch

SqlCeConnection-Klasse | SqlCeConnection-Member | System.Data.SqlServerCe-Namespace