This API prepares a statement to execute.
You only need to prepare a statement if you have parameter markers, identified by ? (question mark) symbols, in the SQL. You may use pjs.executeDirect() otherwise.
Parameter
- SQL statement string
- The SQL statement must be valid for the database you are using
Return Value
This method will return a handle which much be used again in other statements.
Exception Handling
SQL diagnostics are reported in the SQLCA:
https://www.ibm.com/support/knowledgecenter/en/ssw_ibm_i_73/db2/rbafzfielddescsqlca.htm
SQLCA fields are defined in Profound.js programs with the names in lowercase. sqlcode will be set to zero if execution was successful.
Example
var table = "productsp"; pjs.define("productsp_out", { type: 'data structure', qualified: true, dim: 50, extName: table }); pjs.define("searchQuery", { type: "char", length: 30 }); pjs.clear(productsp_out); searchQuery = '%' + 'Garmin' + '%'; var c1 = pjs.prepare("SELECT * FROM productsp WHERE prdesc LIKE ? ORDER BY prid"); c1.bindParameters(searchQuery.trim()); c1.execute(); pjs.fetch(c1, productsp_out, 50); c1.close();
Requirements
When using an IBM i database, this API requires the Profound.js Connector module.