CommittableTransaction コンストラクター

定義

CommittableTransaction クラスの新しいインスタンスを初期化します。Initializes a new instance of the CommittableTransaction class.

オーバーロード

CommittableTransaction()

CommittableTransaction クラスの新しいインスタンスを初期化します。Initializes a new instance of the CommittableTransaction class.

CommittableTransaction(TimeSpan)

指定した CommittableTransaction 値を使用して、timeout クラスの新しいインスタンスを初期化します。Initializes a new instance of the CommittableTransaction class with the specified timeout value.

CommittableTransaction(TransactionOptions)

指定したトランザクション オプションを使用して、CommittableTransaction クラスの新しいインスタンスを初期化します。Initializes a new instance of the CommittableTransaction class with the specified transaction options.

CommittableTransaction()

CommittableTransaction クラスの新しいインスタンスを初期化します。Initializes a new instance of the CommittableTransaction class.

public:
 CommittableTransaction();
public CommittableTransaction ();
Public Sub New ()

例外

Windows 98、Windows 98 Second Edition、または Windows Millennium Edition でトランザクションを作成しようとしました。An attempt to create a transaction under Windows 98, Windows 98 Second Edition or Windows Millennium Edition.

次の例では、CommittableTransaction の新しいインスタンスを作成し、それをコミットします。The following sample creates a new instance of CommittableTransaction and commits it.

//Create a committable transaction
tx = new CommittableTransaction();

SqlConnection myConnection = new SqlConnection("server=(local)\\SQLExpress;Integrated Security=SSPI;database=northwind");
SqlCommand myCommand = new SqlCommand();

//Open the SQL connection
myConnection.Open();

//Give the transaction to SQL to enlist with
myConnection.EnlistTransaction(tx);

myCommand.Connection = myConnection;

// Restore database to near it's original condition so sample will work correctly.
myCommand.CommandText = "DELETE FROM Region WHERE (RegionID = 100) OR (RegionID = 101)";
myCommand.ExecuteNonQuery();

// Insert the first record.
myCommand.CommandText = "Insert into Region (RegionID, RegionDescription) VALUES (100, 'MidWestern')";
myCommand.ExecuteNonQuery();

// Insert the second record.
myCommand.CommandText = "Insert into Region (RegionID, RegionDescription) VALUES (101, 'MidEastern')";
myCommand.ExecuteNonQuery();

// Commit or rollback the transaction
while (true)
{
    Console.Write("Commit or Rollback? [C|R] ");
    ConsoleKeyInfo c = Console.ReadKey();
    Console.WriteLine();

    if ((c.KeyChar == 'C') || (c.KeyChar == 'c'))
    {
        tx.Commit();
        break;
    }
    else if ((c.KeyChar == 'R') || (c.KeyChar == 'r'))
    {
        tx.Rollback();
        break;
    }
}
myConnection.Close();
tx = null;
tx = New CommittableTransaction

Dim myConnection As New SqlConnection("server=(local)\SQLExpress;Integrated Security=SSPI;database=northwind")
Dim myCommand As New SqlCommand()

'Open the SQL connection
myConnection.Open()

'Give the transaction to SQL to enlist with
myConnection.EnlistTransaction(tx)

myCommand.Connection = myConnection

'Restore database to near it's original condition so sample will work correctly.
myCommand.CommandText = "DELETE FROM Region WHERE (RegionID = 100) OR (RegionID = 101)"
myCommand.ExecuteNonQuery()

'Insert the first record.
myCommand.CommandText = "Insert into Region (RegionID, RegionDescription) VALUES (100, 'MidWestern')"
myCommand.ExecuteNonQuery()

'Insert the second record.
myCommand.CommandText = "Insert into Region (RegionID, RegionDescription) VALUES (101, 'MidEastern')"
myCommand.ExecuteNonQuery()

'Commit or rollback the transaction
Dim c As ConsoleKeyInfo
While (True)
    Console.Write("Commit or Rollback? [C|R] ")
    c = Console.ReadKey()
    Console.WriteLine()

    If (c.KeyChar = "C") Or (c.KeyChar = "c") Then
        tx.Commit()
        Exit While
    ElseIf ((c.KeyChar = "R") Or (c.KeyChar = "r")) Then
        tx.Rollback()
        Exit While
    End If
End While

myConnection.Close()
tx = Nothing

CommittableTransaction(TimeSpan)

指定した CommittableTransaction 値を使用して、timeout クラスの新しいインスタンスを初期化します。Initializes a new instance of the CommittableTransaction class with the specified timeout value.

public:
 CommittableTransaction(TimeSpan timeout);
public CommittableTransaction (TimeSpan timeout);
new System.Transactions.CommittableTransaction : TimeSpan -> System.Transactions.CommittableTransaction
Public Sub New (timeout As TimeSpan)

パラメーター

timeout
TimeSpan

トランザクションが中止されるまでに存在できる最大時間。The maximum amount of time the transaction can exist, before it is aborted.

例外

Windows 98、Windows 98 Second Edition、または Windows Millennium Edition でトランザクションを作成しようとしました。An attempt to create a transaction under Windows 98, Windows 98 Second Edition or Windows Millennium Edition.

CommittableTransaction(TransactionOptions)

指定したトランザクション オプションを使用して、CommittableTransaction クラスの新しいインスタンスを初期化します。Initializes a new instance of the CommittableTransaction class with the specified transaction options.

public:
 CommittableTransaction(System::Transactions::TransactionOptions options);
public CommittableTransaction (System.Transactions.TransactionOptions options);
new System.Transactions.CommittableTransaction : System.Transactions.TransactionOptions -> System.Transactions.CommittableTransaction
Public Sub New (options As TransactionOptions)

パラメーター

options
TransactionOptions

新しいトランザクションで使用するトランザクション オプションを示す TransactionOptions 構造体。A TransactionOptions structure that describes the transaction options to use for the new transaction.

例外

Windows 98、Windows 98 Second Edition、または Windows Millennium Edition でトランザクションを作成しようとしました。An attempt to create a transaction under Windows 98, Windows 98 Second Edition or Windows Millennium Edition.

options が正しくありません。options is invalid.

次の例では、オプションを使用して CommittableTransaction の新しいインスタンスを作成し、そのインスタンスを中止します。The following sample creates a new instance of CommittableTransaction with options, and aborts it.

適用対象