SqlCeCommand 类

表示对数据源执行的 SQL 语句。

命名空间: System.Data.SqlServerCe
程序集: System.Data.SqlServerCe(在 system.data.sqlserverce.dll 中)

语法

声明
Public NotInheritable Class SqlCeCommand
    Inherits DbCommand
    Implements ICloneable
用法
Dim instance As SqlCeCommand
public sealed class SqlCeCommand : DbCommand, ICloneable
public ref class SqlCeCommand sealed : public DbCommand, ICloneable
public final class SqlCeCommand extends DbCommand implements ICloneable
public final class SqlCeCommand extends DbCommand implements ICloneable
不适用。

备注

当创建 SqlCeCommand 的实例时,读/写属性将被设置为它们的初始值。有关这些值的列表,请参见 SqlCeCommand 构造函数。

SqlCeCommand 具有以下方法(这些方法在数据源执行命令):

说明

ExecuteReader

执行返回行的命令。

ExecuteNonQuery

执行 SQL 命令,如 INSERT、DELETE 和 UPDATE 语句。

ExecuteScalar

从数据库中检索单个值(例如一个聚合值)。

ExecuteResultSet

执行命令并返回结果集。

Microsoft SQL Server 2005 Compact Edition 数据提供程序不支持成批的查询。命令的格式必须是:

Select * from Customers 而不能是 Select * from Customers; Select * from Orders;

如果使用为 System.Data.SqlClient 生成的代码,则必须更改查询,使它们符合此限制。

SQL Server Compact Edition 不仅支持共享同一连接的多个命令,还支持多个并发连接。这意味着可能在同一个连接上存在多个 SqlCeDataReader 实例。此行为不同于 System.Data.SqlClient 的行为。

如果执行 SqlCeCommand 的方法产生了致命的 SqlCeExceptionSqlCeConnection 可能会被关闭。您可以重新打开连接并继续。

示例

下面的示例使用 SqlCeCommand 以及 SqlCeConnection,来从数据库选择行。

Dim query As String = "SELECT [Order ID], [Customer] FROM Orders"
Dim conn As New SqlCeConnection(connString)
Dim cmd As New SqlCeCommand(query, conn)

conn.Open()
Dim rdr As SqlCeDataReader = cmd.ExecuteReader()

Try
    ' Iterate through the results
    '
    While rdr.Read()
        Dim val1 As Integer = rdr.GetInt32(0)
        Dim val2 As String = rdr.GetString(1)
    End While
Finally
    ' Always call Close when done reading
    '
    rdr.Close()

    ' Always call Close when done reading
    '
    conn.Close()
End Try
string query = "SELECT [Order ID], [Customer] FROM Orders";
SqlCeConnection conn = new SqlCeConnection(connString);
SqlCeCommand cmd = new SqlCeCommand(query, conn);

conn.Open();
SqlCeDataReader rdr = cmd.ExecuteReader();

try
{
    // Iterate through the results
    //
    while (rdr.Read())
    {
        int val1 = rdr.GetInt32(0);
        string val2 = rdr.GetString(1);
    }
}
finally
{
    // Always call Close when done reading
    //
    rdr.Close();

    // Always call Close when done reading
    //
    conn.Close();
}

继承层次结构

System.Object
   System.MarshalByRefObject
     System.ComponentModel.Component
       System.Data.Common.DbCommand
        System.Data.SqlServerCe.SqlCeCommand

线程安全

此类型的任何公共静态(Visual Basic 中的 Shared)成员都是线程安全的,但不保证所有实例成员都是线程安全的。

平台

Windows 98, Windows Server 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

Windows Vista、Microsoft Windows XP SP2 和 Windows Server 2003 SP1 支持 Microsoft .NET Framework 3.0。

版本信息

.NET Framework

受以下版本支持:3.0

.NET Compact Framework

受以下版本支持:2.0、1.0

请参见

参考

SqlCeCommand 成员
System.Data.SqlServerCe 命名空间
SqlCeDataAdapter
SqlCeConnection