31.3 Methods Reference
Transaction nestTran = Transaction.Begin();
Transaction nestTran = Transaction.Begin(IsolationLevel il);
|
|
Starts a nested database transaction.
Parameters
- nestTran
-
Returns a reference to the nested database transaction.
- il
-
The isolation level to use for the new transaction.
Example
This example demonstrates how to start a nested transaction using the
Begin method:
String connString = "Data Source=(local);Integrated security=SSPI;" +
"Initial Catalog=Northwind;";
OleDbConnection conn = new OleDbConnection(connString);
conn.Open();
OleDbTransaction tran = conn.BeginTransaction();
// start a nested transaction
OleDbTransaction nestTran = tran.Begin();
Notes
This method is available only in the OLE DB .NET data provider.
An InvalidOperationException is raised if the data
source doesn't support nested transactions.
Commits the database transaction.
Parameters
None.
Example
The following example demonstrates how to start a transaction and
either commit the transaction or roll the transaction back, depending
on the outcome of commands executed against the data source:
String connString = "Data Source=(local);Integrated security=SSPI;" +
"Initial Catalog=Northwind;";
SqlConnection conn = new SqlConnection(connString);
conn.Open();
SqlTransaction tran = conn.BeginTransaction();
try
{
// ... execute some commands against the data source
tran.Commit();
}
catch (Exception e)
{
tran.Rollback();
}
finally
{
conn.Close();
}
Transaction.Rollback();
Transaction.Rollback(String savePointName);
|
|
Rolls back a transaction from a pending state. A savepoint can
optionally be specified as the point to roll the transaction back to
with the SQL Server .NET data provider.
Parameters
None.
Example
See the Example for the Commit( ) method in this
chapter.
Note
The overloaded Rollback( ) method with the
savepoint name argument is available only in the SQL Server .NET data
provider.
void = Transaction.Save(String savePointName);
|
|
Creates a savepoint in the transaction that can roll back a portion
of the transaction.
Parameters
None.
Example
The following example demonstrates how to create and use a savepoint
to partially roll back a transaction:
String connString = "Data Source=(local);Integrated security=SSPI;" +
"Initial Catalog=Northwind;";
SqlConnection conn = new SqlConnection(connString);
conn.Open();
SqlTransaction tran = conn.BeginTransaction();
try
{
// ... execute some commands against the data source
}
catch (Exception ex)
{
// roll back the transaction, close the connection, and leave
tran.Rollback();
conn.Close();
return;
}
// create a save point called SavePoint1
tran.Save("SavePoint1");
try
{
// ... execute some commands against the data source
tran.Commit();
}
catch (SqlException ex)
{
// roll back the transaction to the save point
tran.Rollback("SavePoint1");
// commit all processing up to the save point
tran.Commit();
}
finally
{
conn.Close();
}
Note
This method is available only in the SQL Server .NET data
provider.
|