SqlCeCommand 构造函数 (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 _
)
用法
Dim commandText As String
Dim connection As SqlCeConnection
Dim transaction As SqlCeTransaction

Dim instance As New SqlCeCommand(commandText, _
    connection, transaction)
public SqlCeCommand(
    string commandText,
    SqlCeConnection connection,
    SqlCeTransaction transaction
)
public:
SqlCeCommand(
    String^ commandText, 
    SqlCeConnection^ connection, 
    SqlCeTransaction^ transaction
)
new : 
        commandText:string * 
        connection:SqlCeConnection * 
        transaction:SqlCeTransaction -> SqlCeCommand
public function SqlCeCommand(
    commandText : String, 
    connection : SqlCeConnection, 
    transaction : SqlCeTransaction
)

参数

注释

下表显示 SqlCeCommand 实例的初始属性值。

属性

初始值

CommandText

cmdText

CommandType

Text

Connection

一个新的 SqlCeConnection,它是 connection 参数的值。

您可以通过设置相关属性来更改这些参数中的任何一个参数的值。

示例

下面的示例创建一个 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();
        }

请参阅

参考

SqlCeCommand 类

SqlCeCommand 重载

System.Data.SqlServerCe 命名空间