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.
Assembly: System.Data (in System.Data.dll)
Use the method to retrieve a single value (for example, an aggregate value) from a database. 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.
A typical query can be formatted as in the following C# example:
CommandText = "select count(*) as NumberOfRegions from region"; Int32 count = (int) ExecuteScalar();
If the first column of the first row in the result set is not found, a null reference (Nothing in Visual Basic) is returned. If the value in the database is a null reference (Nothing in Visual Basic), the query returns DBNull.Value.
The following example creates an instance of the derived class, SqlCommand, and then executes it using ExecuteScalar. 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.