IDbCommand.ExecuteScalar Метод

Определение

Выполняет запрос и возвращает первый столбец первой строки результирующего набора, возвращаемого запросом.Executes the query, and returns the first column of the first row in the resultset returned by the query. Дополнительные столбцы или строки не обрабатываются.Extra columns or rows are ignored.

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

Возвраты

Первый столбец или первая строка в результирующем наборе.The first column of the first row in the resultset.

Примеры

В следующем примере создается экземпляр производного класса, SqlCommand, а затем выполняется с помощью ExecuteScalar.The following example creates an instance of the derived class, SqlCommand, and then executes it using ExecuteScalar. В примере передается строка, которая является инструкцией Transact-SQL, возвращающей статистический результат, и строка, используемая для соединения с источником данных.The example is passed a string that is a Transact-SQL statement that returns an aggregate result, and a string to use to connect to the data source.

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 для получения одного значения (например, статистического значения) из базы данных.Use the ExecuteScalar method to retrieve a single value (for example, an aggregate value) from a database. Для этого требуется меньше кода, чем при использовании метода ExecuteReader, а затем выполняются операции, необходимые для создания единственного значения с использованием данных, возвращаемых IDataReader.This requires less code than using the ExecuteReader method, and then performing the operations necessary to generate the single value using the data returned by an IDataReader.

Типичный ExecuteScalar запрос можно отформатировать, как показано C# в следующем примере:A typical ExecuteScalar query can be formatted as in the following C# example:

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

Если первый столбец первой строки в результирующем наборе не найден, возвращается пустая ссылка (Nothing в Visual Basic).If the first column of the first row in the result set is not found, a null reference (Nothing in Visual Basic) is returned. Если значение в базе данных равно null, запрос возвращает DBNull.Value.If the value in the database is null, the query returns DBNull.Value.

Применяется к