Share via


OleDbCommand.ExecuteScalar 方法

定义

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

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

返回

结果集中第一行的第一列;如果结果集为空,则为 Null 引用。

实现

例外

不能在连接最初在其中登记的上下文之外的事务上下文中执行命令。

示例

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

public void CreateMyOleDbCommand(string queryString,
    OleDbConnection connection)
{
    OleDbCommand command = new OleDbCommand(queryString, connection);
    command.Connection.Open();
    command.ExecuteScalar();
    connection.Close();
}
Public Sub CreateMyOleDbCommand(queryString As String, _
    connection As OleDbConnection)
    Dim command As New OleDbCommand(queryString, connection)
    command.Connection.Open()
    command.ExecuteScalar()
    connection.Close()
End Sub

注解

ExecuteScalar使用 方法可从数据源检索单个值,例如聚合值。 这需要的代码比使用 ExecuteReader 方法少,然后执行使用 返回 OleDbDataReader的数据生成单个值所需的操作。

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

CommandText = "SELECT COUNT(*) FROM region";  
Int32 count = (int32) ExecuteScalar();  

适用于

另请参阅