Source for file sqlite.php
Documentation is available at sqlite.php
* @package Joomla.Platform
* @copyright Copyright (C) 2005 - 2013 Open Source Matters, Inc. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE
* SQLite Query Building Class.
* @package Joomla.Platform
* @var integer The offset for the result set.
* @var integer The limit for the result set.
* @var array Bounded object array
* Method to add a variable to an internal array that will be bound to a prepared SQL statement before query execution. Also
* removes a variable that has been bounded from the internal bounded array when the passed in value is null.
* @param string|integer $key The key that will be used in your SQL query to reference the value. Usually of
* the form ':key', but can also be an integer.
* @param mixed &$value The value that will be bound. The value is passed by reference to support output
* parameters such as those possible with stored procedures.
* @param integer $dataType Constant corresponding to a SQL datatype.
* @param integer $length The length of the variable. Usually required for OUTPUT parameters.
* @param array $driverOptions Optional driver options to be used.
* @return JDatabaseQuerySqlite
public function bind($key =
null, &$value =
null, $dataType =
PDO::PARAM_STR, $length =
0, $driverOptions =
array())
// Case 1: Empty Key (reset $bounded array)
// Case 2: Key Provided, null value (unset key from $bounded array)
$obj->dataType =
$dataType;
$obj->driverOptions =
$driverOptions;
// Case 3: Simply add the Key/Value into the bounded array
* Retrieves the bound parameters array when key is null and returns it by reference. If a key is provided then that item is
* @param mixed $key The bounded variable key to retrieve.
* Clear data from the query or a specific clause of the query.
* @param string $clause Optionally, the name of the clause to clear, or nothing to clear the whole query.
* @return JDatabaseQuerySqlite Returns this object to allow chaining.
public function clear($clause =
null)
* Method to modify a query already in string format with the needed
* additions to make the query limited to a particular number of
* results, or start at a particular offset. This method is used
* automatically by the __toString() method if it detects that the
* query implements the JDatabaseQueryLimitable interface.
* @param string $query The query in string format
* @param integer $limit The limit for the result set
* @param integer $offset The offset for the result set
if ($limit >
0 ||
$offset >
0)
$query .=
' LIMIT ' .
$offset .
', ' .
$limit;
* Sets the offset and limit for the result set, if the database driver supports it.
* $query->setLimit(100, 0); (retrieve 100 rows, starting at first record)
* $query->setLimit(50, 50); (retrieve 50 rows, starting at 50th record)
* @param integer $limit The limit for the result set
* @param integer $offset The offset for the result set
* @return JDatabaseQuerySqlite Returns this object to allow chaining.
public function setLimit($limit =
0, $offset =
0)
$this->limit = (int)
$limit;
$this->offset = (int)
$offset;
* Add to the current date and time.
* $query->select($query->dateAdd());
* Prefixing the interval with a - (negative sign) will cause subtraction to be used.
* @param datetime $date The date or datetime to add to
* @param string $interval The string representation of the appropriate number of units
* @param string $datePart The part of the date to perform the addition on
* @return string The string with the appropriate sql for addition of dates
* @link http://www.sqlite.org/lang_datefunc.html
public function dateAdd($date, $interval, $datePart)
// SQLite does not support microseconds as a separate unit. Convert the interval to seconds
$interval =
.001 *
$interval;
if (substr($interval, 0, 1) !=
'-')
return "datetime('" .
$date .
"', '+" .
$interval .
" " .
$datePart .
"')";
return "datetime('" .
$date .
"', '" .
$interval .
" " .
$datePart .
"')";
Documentation generated on Tue, 19 Nov 2013 15:14:06 +0100 by phpDocumentor 1.4.3