Yes, the call is in ODBC32.dll (which calls ibodbc.dll), which is a C API.
To call it from Delphi, declare as follows:
function SQLRowCount(hstmt:LongInt;var RowCount:LongInt):SmallInt;stdcall;external 'ODBC32.DLL';
From ADO, you would use:
METHOD: Command::Execute Syntax for non-row-returning: commandobject.Execute RecordsAffected, Parameters, Options Syntax for row-returning: Set recordsetobject = commandobject.Execute (RecordsAffected, Parameters, Options)
The Execute method returns a reference to a Recordset object. You use this method to execute the query, SQL statement, or stored procedure contained in the CommandText property of the Command object. If it is a row-returning query, the results are stored in a new Recordset object. If it is not a row-returning query, the provider will return a closed Recordset object.
There are three optional parameters.
RecordsAffected
parameter is a long value returned by the provider and is the number of records affected by an action query. (For a row-returning query, you will need to use the RecordCount
Recordset object to get a count of how many records are in the object.)Parameters
parameter is used to change, update, or insert new parameter values into the Parameters
Collection assigned to the Command
object.Options
parameter defines how the provider should evaluate the CommandText
parameter. It is a long value that is the sum of one or more of the CommandTypeEnum
or ExecuteOptionEnum
constants. The default is adCmdUnspecified
or -1
.