Note: The is a sample application covering parametrized queries in the sample applications folder, under Data Aware\query.
Parametrized Queries are SQL sentences with placeholders for data to be later included by the Query component. They improve performance in intense query processes.
First, add parameters to a Query component. Use the Database::Param() method to format those parameters:
$this->Query1->Filter=" products_date_added>=".$this->Database1->Param('start_date'). " and products_date_added<=".$this->Database1->Param('end_date')."";
The resulting SQL query will then have placeholders instead of the actual values. Conceptually, something like this:
SELECT * FROM products WHERE products_date_added>='?' and products_date_added<='?'
Note: Be careful, they must be placed in the array in the same order they appear in the SQL sentence.
$params=array(); $params=$this->dtStart->Text; $params=$this->dtEnd->Text; $this->Query1->Params=$params;
Now that you setup the values for the parameters, you must prepare the query with the Query::Prepare() method.
Properties, Methods and Events
- Documented in the RPCL Reference.
In the following folders inside the sample applications directory you will find projects covering this component: