Initializes a query and declares this query to the database server in order to optimize the next executions of this query. This query is not run. Then, the query can be run by HExecuteQuery
. This function is available for the queries with or without bind.
We recommend that you use this function when the same query is run successively and when only some of the query parameters are modified at each execution.
This function is optional and it can only be used on the Client/Server databases (currently available for AS/400).
For the other databases accessed by a Native Access, OLE DB or ODBC, HPrepareSQLQuery runs the query.
This function cannot be used on the HFSQL databases (HFSQL Classic or Client/Server) and on the xBase databases.
Remark: From version 19, HFSQL is the new name of HyperFileSQL.
hPrepareQuery(QRY_MyQry, MyConnection, hQueryWithoutCorrection)
FOR I = 1 TO 10
QRY_MyQry.lastname = "LastName" + I
QRY_MyQry.firstname = "FirstName" + I
QRY_MyQry.age_ = I
<Result> = HPrepareQuery(<Query name> , <Connection> [, <Mode>])
- True if the query was initialized,
- False otherwise. HErrorInfo returns more details about the problem.
<Query name>: Character string (with or without quotes)
If a query with the same name is already declared, it is replaced by the new query.
- Name and full path of query (".WDR" file) to initialize.
- Logical name of query to initialize.
<Connection>: Character string (with or without quotes)
Name of a connection, defined in the data model editor or dynamically by HDescribeConnection. The query will be run via this connection.
<Mode>: Optional Integer constant
Option for initializing the query:
No check is performed by the HFSQL engine. This option must be used if the query contains commands specific to a connection type (Oracle, SQL Server, ...)
Caution: if this constant is used: