OracleCommand.ExecuteScalar Method

Definition

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

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

Returns

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

Implements

Examples

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);
    command.Connection.Open();
    command.ExecuteScalar();
    connection.Close();
 }
Public Sub CreateOracleCommand(myScalarQuery As String, connection As OracleConnection)
    Dim command As New OracleCommand(myScalarQuery, connection)
    command.Connection.Open()
    command.ExecuteScalar()
    connection.Close()
End Sub

Remarks

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