dbQueryPrepare#
Purpose#
Prepares a SQL query for execution.
Format#
- ret = dbQueryPrepare(qid, query)#
- Parameters:
qid (scalar) – query index number.
query (string) – database query to prepare.
- Returns:
ret (scalar) – 1 for success and 0 for failure.
Examples#
// Add "MYSQL" database to list of database connections
db_id = dbAddDatabase("MYSQL");
// Create query
qid = dbCreateQuery(db_id);
// Prepare query
ret = dbQueryPrepare(qid, "SELECT *
FROM STOCKS WHERE SYMBOL = :sym");
// Set `:sym` placeholder
dbQueryBindValue(qid, ":sym", "GOOG");
// Execute query
ret = dbQueryExecPrepared(qid);
Remarks#
The query may contain placeholders for binding values. Both Oracle style
colon-name (e.g., :surname
), and ODBC style (?
) placeholders are
supported; but they cannot be mixed in the same query.
Note
Portability: Some databases choose to delay preparing a query until
it is executed the first time. In this case, preparing a syntactically
incorrect query succeeds, but every consecutive dbQueryExecPrepared()
will fail.
For SQLite, the query string can contain only one statement at a time. If more than one statement is given, the function returns 0.
See also#
See also
Function dbQueryBindValue()