次の方法で共有


SqlCeCommand Constructor (String, SqlCeConnection, SqlCeTransaction)

クエリ テキスト、SqlCeConnection、および SqlCeTransaction を指定して、SqlCeCommand クラスの新しいインスタンスを初期化します。

名前空間: System.Data.SqlServerCe
アセンブリ: System.Data.SqlServerCe (system.data.sqlserverce.dll 内)

構文

'宣言
Public Sub New ( _
    commandText As String, _
    connection As SqlCeConnection, _
    transaction As SqlCeTransaction _
)
public SqlCeCommand (
    string commandText,
    SqlCeConnection connection,
    SqlCeTransaction transaction
)
public:
SqlCeCommand (
    String^ commandText, 
    SqlCeConnection^ connection, 
    SqlCeTransaction^ transaction
)
public SqlCeCommand (
    String commandText, 
    SqlCeConnection connection, 
    SqlCeTransaction transaction
)
public function SqlCeCommand (
    commandText : String, 
    connection : SqlCeConnection, 
    transaction : SqlCeTransaction
)

パラメータ

  • commandText
    クエリ テキスト。
  • transaction
    SqlCeCommand を実行するトランザクション。

解説

SqlCeCommand のインスタンスの初期プロパティ値を次の表に示します。

プロパティ

初期値

CommandText

cmdText

CommandType

Text

Connection

connection パラメータの値である新しい SqlCeConnection

これらのパラメータの値は、関連するプロパティを設定することによって変更できます。

SqlCeCommand を作成し、そのプロパティの一部を設定する例を次に示します。

Dim cmdText As String = "INSERT INTO FactSalesQuota " & _
        "(EmployeeKey, TimeKey, SalesAmountQuota) " & _
        "VALUES (2, 1158, 150000.00)"

Dim conn As New SqlCeConnection("Data Source = AdventureWorks.sdf;")
conn.Open()

' Start a local transaction; SQL Mobile supports the following 
' isolation levels: ReadCommitted, RepeatableRead, Serializable
'
Dim tx As SqlCeTransaction = conn.BeginTransaction(IsolationLevel.ReadCommitted)

' By default, commands run in auto-commit mode; 
'
Dim cmd As New SqlCeCommand(cmdText, conn, tx)

Try
    cmd.ExecuteNonQuery()

    ' Commit the changes to disk if everything above succeeded;
    ' Use Deferred mode for optimal performance; the changes will 
    ' be flashed to disk within the timespan specified in the 
    ' ConnectionString 'FLUSH INTERVAL' property; 
    '
    tx.Commit(CommitMode.Deferred)

    ' Alternatively, you could use:
    ' tx.Commit(CommitMode.Immediate);
    '
    ' or use default (Deferred) commit mode:
    ' tx.Commit()

Catch e As Exception
    ' Handle errors here
    '
    tx.Rollback()
Finally
    conn.Close()
End Try
string cmdText = "INSERT INTO FactSalesQuota " +
    "(EmployeeKey, TimeKey, SalesAmountQuota) " +
    "VALUES (2, 1158, 150000.00)";
        
SqlCeConnection conn = new SqlCeConnection("Data Source = AdventureWorks.sdf;");
conn.Open();

// Start a local transaction; SQL Mobile supports the following 
// isolation levels: ReadCommitted, RepeatableRead, Serializable
//
SqlCeTransaction tx = conn.BeginTransaction(IsolationLevel.ReadCommitted);

SqlCeCommand cmd = new SqlCeCommand(cmdText, conn, tx);

try
{
    cmd.ExecuteNonQuery();

      
    // Commit the changes to disk if everything above succeeded;
    // Use Deferred mode for optimal performance; the changes will 
    // be flushed to disk within the timespan specified in the 
    // ConnectionString 'FLUSH INTERVAL' property; 
    //
    tx.Commit(CommitMode.Deferred);

    // Alternatively, you could use:
    // tx.Commit(CommitMode.Immediate);
    //
    // or use default (Deferred) commit mode:
    // tx.Commit()
}
catch (Exception)
{
    // Handle errors here
    //
    tx.Rollback();
}
finally
{
    conn.Close();
}

プラットフォーム

開発プラットフォーム

Windows Vista、Windows Mobile 5.0、Windows XP Professional with Service Pack 2 (SP2)、Windows Server 2003、Windows Mobile 2003 for Pocket PC、Windows CE 5.0
バージョン情報
.NET Framework および .NET Compact Framework
3.5 でサポート
.NET Framework
3.0 でサポート
.NET Compact Framework および .Net Framework
2.0 でサポート

参照

リファレンス

SqlCeCommand Class
SqlCeCommand Members
System.Data.SqlServerCe Namespace