Session.ExecuteScalar(String, String[], Object[]) Method
Executes the specified SQL query and returns the first column of the first row in the result set returned by the query.
Namespace: DevExpress.Xpo
Assembly: DevExpress.Xpo.v24.1.dll
NuGet Packages: DevExpress.Win.PivotGrid, DevExpress.Win.TreeMap, DevExpress.Xpo
NuGet Package: DevExpress.Xpo
Declaration
Parameters
Name | Type | Description |
---|---|---|
sql | String | Specifies an SQL statement. |
parameterNames | String[] | Specifies parameter names. |
parameterValues | Object[] | An array of objects specifying parameters to pass to the database server along with the query. |
Returns
Type | Description |
---|---|
Object | The first column of the first row in the query’s result set. If the column is not found in the result set, a null reference (Nothing in Visual Basic) is returned. If the value in the database is null, DBNull.Value is returned. |
Remarks
Use ExecuteScalar to query data stores for a single or aggregate value, without having to retrieve a result set.
The following example demonstrates how to use this method. Here, session is the Session instance.
public int GetEmployeeOrdersCount(int employeeId) {
return (int)session.ExecuteScalar(
"SELECT COUNT(*) FROM [Northwind].[dbo].[Orders] WHERE [EmployeeID] = @p1",
new string[] { "p1" },
new object[] { employeeId }
);
}
Note that a format of parameter names in a SQL statement depends on the ADO.NET provider and database you use.
To learn more about executing SQL queries in XPO, refer to Direct SQL Queries.
Note
The ExecuteScalar method sends queries directly, so the correct query syntax depends on a particular database server.