DB2Connection.BeginTransaction 方法
在資料庫開始交易。
超載清單
| 名稱 | 說明 |
|---|---|
| BeginTransaction () | 在資料庫開始交易。 |
| BeginTransaction (IsolationLevel) | 在具有指定 IsolationLevel 值的資料庫上開始交易。 |
範例
[Visual Basic , C#] 下列範例會建立 DB2®連線 和 DB2交易。 它也示範如何使用 BeginTransaction、 DB2交易 .Commit和 DB2Transaction.Rollback 方法。
附註: [Visual Basic , C#] 此範例顯示如何使用其中一個超載版本的 BeginTransaction。 如需其他可能可用的範例,請參閱個別超載主題。
[Visual Basic]
Public Sub RunDB2Transaction(myConnString As String)
Dim myConnection As New DB2Connection(myConnString)
myConnection.Open()
Dim myCommand As New DB2Command()
Dim myTrans As DB2Transaction
' Start a local transaction
myTrans = myConnection.BeginTransaction(IsolationLevel.ReadCommitted)
' Assign transaction object for a pending local transaction
myCommand.Transaction = myTrans
Try
myCommand.CommandText = "Insert into STAFF (ID, NAME) VALUES (...)"
myCommand.ExecuteNonQuery()
myCommand.CommandText = "Insert into STAFF (ID, NAME) VALUES (...)"
myCommand.ExecuteNonQuery()
myTrans.Commit()
Console.WriteLine("Both records are written to database.")
Catch e As Exception
myTrans.Rollback()
Console.WriteLine(e.ToString())
Console.WriteLine("Neither record was written to database.")
Finally
myConnection.Close()
End Try
End Sub
[C#]
public void RunDB2Transaction(string myConnString)
{
DB2Connection myConnection = new DB2Connection(myConnString);
myConnection.Open();
DB2Command myCommand = new DB2Command();
DB2Transaction myTrans;
// Start a local transaction
myTrans = myConnection.BeginTransaction(IsolationLevel.ReadCommitted);
// Assign transaction object for a pending local transaction
myCommand.Transaction = myTrans;
try
{
myCommand.CommandText = "Insert into STAFF (ID, NAME) VALUES (...)";
myCommand.ExecuteNonQuery();
myCommand.CommandText = "Insert into STAFF (ID, NAME) VALUES (...)";
myCommand.ExecuteNonQuery();
myTrans.Commit();
Console.WriteLine("Both records are written to database.");
}
catch(Exception e)
{
myTrans.Rollback();
Console.WriteLine(e.ToString());
Console.WriteLine("Neither record was written to database.");
}
finally
{
myConnection.Close();
}
}