OracleCommand.ExecuteScalar Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
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();