Class DibiSqliteDriver


The dibi driver for SQLite database.

Driver options:

  • database (or file) => the filename of the SQLite database
  • persistent (bool) => try to find a persistent link?
  • unbuffered (bool) => sends query without fetching and buffering the result rows automatically?
  • formatDate => how to format date in SQL (@see date)
  • formatDateTime => how to format datetime in SQL (@see date)
  • dbcharset => database character encoding (will be converted to 'charset')
  • charset => character encoding to set (default is UTF-8)
  • resource (resource) => existing connection resource
  • lazy, profiler, result, substitutes, ... => see DibiConnection options

DibiObject
   |
   --DibiSqliteDriver

Implements interfaces:

IDibiDriver, IDibiResultDriver
Copyright: Copyright (c) 2005, 2010 David Grudl
Located: in /drivers/sqlite.php (line 34)
Constructor Summary
public
Method Summary
void
applyLimit (string &$sql, int $limit, int $offset)
Injects LIMIT/OFFSET to the SQL query.
void
begin ([string $savepoint = NULL])
Begins a transaction (if supported).
void
commit ([string $savepoint = NULL])
Commits statements in a transaction.
void
connect (&$config)
Connects to a database.
void
Disconnects from a database.
string
escape (mixed $value, string $type)
Encodes data for use in a SQL statement.
string
escapeLike (string $value, int $pos)
Encodes string for use in a LIKE statement.
array
fetch (bool $assoc)
Fetches the row at current position and moves the internal cursor to the next position.
void
free ()
Frees the resources allocated for this result set.
int|FALSE
Gets the number of affected rows by the last INSERT, UPDATE or DELETE query.
int|FALSE
getInsertId ($sequence)
Retrieves the ID generated for an AUTO_INCREMENT column by the previous INSERT query.
IDibiReflector
Returns the connection reflector.
mixed
Returns the connection resource.
array
Returns metadata for all columns in a result set.
mixed
Returns the result set resource.
int
Returns the number of rows in a result set.
IDibiResultDriver|NULL
query (string $sql)
Executes the SQL query.
void
registerAggregateFunction (string $name, mixed $rowCallback, mixed $agrCallback, [int $numArgs = -1])
Registers an aggregating user defined function for use in SQL statements.
void
registerFunction (string $name, mixed $callback, [int $numArgs = -1])
Registers an user defined function for use in SQL statements.
void
rollback ([string $savepoint = NULL])
Rollback changes in a transaction.
boolean
seek (int $row)
Moves cursor position without fetching row.
string
unescape (string $value, string $type)
Decodes data from result set.
Methods Inherited From DibiObject
DibiObject::extensionMethod(), DibiObject::getClass(), DibiObject::getReflection(), DibiObject::__call(), DibiObject::__callStatic(), DibiObject::__get(), DibiObject::__isset(), DibiObject::__set(), DibiObject::__unset()

Constructor Details

line 56

__construct

public __construct ()

Method Details

line 295

applyLimit

public void applyLimit (string &$sql, int $limit, int $offset)

Injects LIMIT/OFFSET to the SQL query.

Input
string &$sql The SQL query that will be modified.
int $limit
int $offset
Output
void  

line 166

begin

public void begin ([string $savepoint = NULL])

Begins a transaction (if supported).

Input
string $savepoint optional savepoint name
Output
void  
Throws
throws DibiDriverException

line 179

commit

public void commit ([string $savepoint = NULL])

Commits statements in a transaction.

Input
string $savepoint optional savepoint name
Output
void  
Throws
throws DibiDriverException

line 70

connect

public void connect (&$config)

Connects to a database.

Input
&$config
Output
void  
Throws
throws DibiException

line 104

disconnect

public void disconnect ()

Disconnects from a database.

Output
void  

line 232

escape

public string escape (mixed $value, string $type)

Encodes data for use in a SQL statement.

Input
mixed $value value
string $type type (dibi::TEXT, dibi::BOOL, ...)
Output
string encoded value
Throws
throws InvalidArgumentException

line 264

escapeLike

public string escapeLike (string $value, int $pos)

Encodes string for use in a LIKE statement.

Input
string $value
int $pos
Output
string  

line 326

fetch

public array fetch (bool $assoc)

Fetches the row at current position and moves the internal cursor to the next position.

Input
bool $assoc TRUE for associative array, FALSE for numeric
Output
array array on success, nonarray if no next record

line 365

free

public void free ()

Frees the resources allocated for this result set.

Output
void  

line 142

getAffectedRows

public int|FALSE getAffectedRows ()

Gets the number of affected rows by the last INSERT, UPDATE or DELETE query.

Output
int|FALSE number of rows or FALSE on error

line 153

getInsertId

public int|FALSE getInsertId ($sequence)

Retrieves the ID generated for an AUTO_INCREMENT column by the previous INSERT query.

Input
$sequence
Output
int|FALSE int on success or FALSE on failure

line 214

getReflector

public IDibiReflector getReflector ()

Returns the connection reflector.

Output
IDibiReflector  

line 203

getResource

public mixed getResource ()

Returns the connection resource.

Output
mixed  

line 376

getResultColumns

public array getResultColumns ()

Returns metadata for all columns in a result set.

Output
array  

line 399

getResultResource

public mixed getResultResource ()

Returns the result set resource.

Output
mixed  

line 311

getRowCount

public int getRowCount ()

Returns the number of rows in a result set.

Output
int  

line 117

query

public IDibiResultDriver|NULL query (string $sql)

Executes the SQL query.

Input
string $sql SQL statement.
Output
IDibiResultDriver|NULL  
Throws
throws DibiDriverException

line 432

registerAggregateFunction

public void registerAggregateFunction (string $name, mixed $rowCallback, mixed $agrCallback, [int $numArgs = -1])

Registers an aggregating user defined function for use in SQL statements.

Input
string $name function name
mixed $rowCallback callback called for each row of the result set
mixed $agrCallback callback called to aggregate the "stepped" data from each row
int $numArgs num of arguments
Output
void  

line 417

registerFunction

public void registerFunction (string $name, mixed $callback, [int $numArgs = -1])

Registers an user defined function for use in SQL statements.

Input
string $name function name
mixed $callback callback
int $numArgs num of arguments
Output
void  

line 192

rollback

public void rollback ([string $savepoint = NULL])

Rollback changes in a transaction.

Input
string $savepoint optional savepoint name
Output
void  
Throws
throws DibiDriverException

line 351

seek

public boolean seek (int $row)

Moves cursor position without fetching row.

Input
int $row the 0-based cursor pos to seek to
Output
boolean TRUE on success, FALSE if unable to seek to specified record
Throws
throws DibiException

line 278

unescape

public string unescape (string $value, string $type)

Decodes data from result set.

Input
string $value value
string $type type (dibi::BINARY)
Output
string decoded value
Throws
throws InvalidArgumentException