OracleCommand.ExecuteScalar Method


Executes the query, and returns the first column of the first row in the result set returned by the query as a .NET Framework data type. Extra columns or rows are ignored.

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


The first column of the first row in the result set as a .NET Framework data type, or a null reference if the result set is empty or the result is a REF CURSOR.


The following example creates an OracleCommand and then executes it using ExecuteScalar. The example is passed a string that is an SQL statement that returns an aggregate result, and a string to use to connect to the database.

public void CreateOracleCommand(string myScalarQuery, OracleConnection connection) 
    OracleCommand command = new OracleCommand(myScalarQuery, connection);
Public Sub CreateOracleCommand(myScalarQuery As String, connection As OracleConnection)
    Dim command As New OracleCommand(myScalarQuery, connection)
End Sub


Use the ExecuteScalar 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 from the data returned by an OracleDataReader.

A typical ExecuteScalar query can be formatted as in the following C# example:

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

Applies to

See also