IDbCommand.ExecuteScalar 方法

定义

执行查询,并返回由查询返回的结果集中第一行的第一列。 忽略其他列或行。

public:
 System::Object ^ ExecuteScalar();
public object? ExecuteScalar ();
public object ExecuteScalar ();
abstract member ExecuteScalar : unit -> obj
Public Function ExecuteScalar () As Object

返回

Object

结果集中第一行的第一列。

示例

以下示例创建派生类的实例, SqlCommand然后使用它执行该 ExecuteScalar实例。 该示例传递了一个字符串,该字符串是一个 Transact-SQL 语句,该语句返回聚合结果,以及用于连接到数据源的字符串。

public void CreateSqlCommand(
    string queryString, SqlConnection connection)
{
    SqlCommand command = new
        SqlCommand(queryString, connection);
    command.Connection.Open();
    command.ExecuteScalar();
    connection.Close();
}
Public Sub CreateSqlCommand( _
    queryString As String, connection As SqlConnection)

    Dim command As New SqlCommand(queryString, connection)
    command.Connection.Open()
    command.ExecuteScalar()
    connection.Close()
End Sub

注解

ExecuteScalar使用此方法从数据库中检索单个值 (,例如聚合值) 。 这需要的代码比使用 ExecuteReader 方法少,然后执行使用 an IDataReader返回的数据生成单个值所需的操作。

典型 ExecuteScalar 查询的格式如下 C# 示例所示:

CommandText = "select count(*) as NumberOfRegions from region";  
Int32 count = (int) ExecuteScalar();  

如果未找到结果集中第一行的第一列,则返回Visual Basic) 中的空引用 (Nothing。 如果数据库中的值是 null,查询将 DBNull.Value返回。

适用于