DB
[ class tree: DB ] [ index: DB ] [ all elements ]

Class: DB_sqlite

Source Location: /DB-1.7.14/DB/sqlite.php

Class Overview

PEAR
   |
   --DB_common
      |
      --DB_sqlite

The methods PEAR DB uses to interact with PHP's sqlite extension for interacting with SQLite databases


Author(s):

Version:

  • Release: 1.7.14

Copyright:

  • 1997-2007 The PHP Group

Variables

Methods


Inherited Variables

Inherited Methods

Class: DB_common

DB_common::DB_common()
This constructor calls $this->PEAR('DB_Error')
DB_common::affectedRows()
Determines the number of rows affected by a data maniuplation query
DB_common::autoCommit()
Enables or disables automatic commits
DB_common::autoExecute()
Automaticaly generates an insert or update query and call prepare() and execute() with it
DB_common::autoPrepare()
Automaticaly generates an insert or update query and pass it to prepare()
DB_common::buildManipSQL()
Produces an SQL query string for autoPrepare()
DB_common::commit()
Commits the current transaction
DB_common::createSequence()
Creates a new sequence
DB_common::dropSequence()
Deletes a sequence
DB_common::errorCode()
Maps native error codes to DB's portable ones
DB_common::errorMessage()
Maps a DB error code to a textual message
DB_common::errorNative()
Gets the DBMS' native error code produced by the last query
DB_common::escapeSimple()
Escapes a string according to the current DBMS's standards
DB_common::execute()
Executes a DB statement prepared with prepare()
DB_common::executeEmulateQuery()
Emulates executing prepared statements if the DBMS not support them
DB_common::executeMultiple()
Performs several execute() calls on the same statement handle
DB_common::freePrepared()
Frees the internal resources associated with a prepared query
DB_common::getAll()
Fetches all of the rows from a query result
DB_common::getAssoc()
Fetches an entire query result and returns it as an associative array using the first column as the key
DB_common::getCol()
Fetches a single column from a query result and returns it as an indexed array
DB_common::getListOf()
Lists internal database information
DB_common::getOne()
Fetches the first column of the first row from a query result
DB_common::getOption()
Returns the value of an option
DB_common::getRow()
Fetches the first row of data returned from a query result
DB_common::getSequenceName()
Generates the name used inside the database for a sequence
DB_common::getSpecialQuery()
Obtains the query string needed for listing a given type of objects
DB_common::getTables()
Lists the tables in the current database
DB_common::limitQuery()
Generates and executes a LIMIT query
DB_common::modifyLimitQuery()
Adds LIMIT clauses to a query string according to current DBMS standards
DB_common::modifyQuery()
Changes a query string for various DBMS specific reasons
DB_common::nextId()
Returns the next free id in a sequence
DB_common::nextQueryIsManip()
Sets (or unsets) a flag indicating that the next query will be a manipulation query, regardless of the usual DB::isManip() heuristics.
DB_common::numRows()
Determines the number of rows in a query result
DB_common::prepare()
Prepares a query for multiple execution with execute()
DB_common::provides()
Tells whether the present driver supports a given feature
DB_common::query()
Sends a query to the database server
DB_common::quote()
DEPRECATED: Quotes a string so it can be safely used in a query
DB_common::quoteBoolean()
Formats a boolean value for use within a query in a locale-independent manner.
DB_common::quoteFloat()
Formats a float value for use within a query in a locale-independent manner.
DB_common::quoteIdentifier()
Quotes a string so it can be safely used as a table or column name
DB_common::quoteSmart()
Formats input so it can be safely used in a query
DB_common::quoteString()
DEPRECATED: Quotes a string so it can be safely used within string delimiters in a query
DB_common::raiseError()
Communicates an error and invoke error callbacks, etc
DB_common::rollback()
Reverts the current transaction
DB_common::setFetchMode()
Sets the fetch mode that should be used by default for query results
DB_common::setOption()
Sets run-time configuration options for PEAR DB
DB_common::tableInfo()
Returns information about a table or a result set
DB_common::toString()
DEPRECATED: String conversion method
DB_common::_checkManip()
Checks if the given query is a manipulation query. This also takes into account the _next_query_manip flag and sets the _last_query_manip flag (and resets _next_query_manip) according to the result.
DB_common::_convertNullArrayValuesToEmpty()
Converts all null values in an array to empty strings
DB_common::_rtrimArrayValues()
Right-trims all strings in an array
DB_common::__sleep()
Automatically indicates which properties should be saved when PHP's serialize() function is called
DB_common::__toString()
Automatic string conversion for PHP 5
DB_common::__wakeup()
Automatically reconnects to the database when PHP's unserialize() function is called

Class Details

[line 53]
The methods PEAR DB uses to interact with PHP's sqlite extension for interacting with SQLite databases

These methods overload the ones declared in DB_common.

NOTICE: This driver needs PHP's track_errors ini setting to be on. It is automatically turned on when connecting to the database. Make sure your scripts don't turn it off.



[ Top ]


Class Variables

$connection =

[line 108]

The raw database connection created by PHP

Type:   resource


[ Top ]

$dbsyntax =  'sqlite'

[line 67]

The database syntax variant to be used (db2, access, etc.), if any

Type:   string


[ Top ]

$dsn = array()

[line 114]

The DSN information for connecting to a database

Type:   array


[ Top ]

$errorcode_map = array(
    )

[line 101]

A mapping of native error codes to DB error codes


Type:   array


[ Top ]

$features = array(
        'limit'         => 'alter',
        'new_link'      => false,
        'numrows'       => true,
        'pconnect'      => true,
        'prepare'       => false,
        'ssl'           => false,
        'transactions'  => false,
    )

[line 82]

The capabilities of this DB implementation

The 'new_link' element contains the PHP version that first provided new_link support for this DBMS. Contains false if it's unsupported.

Meaning of the 'limit' element:

  • 'emulate' = emulate with fetch row by number
  • 'alter' = alter the query
  • false = skip rows


Type:   array


[ Top ]

$keywords = array (
        'BLOB'      => '',
        'BOOLEAN'   => '',
        'CHARACTER' => '',
        'CLOB'      => '',
        'FLOAT'     => '',
        'INTEGER'   => '',
        'KEY'       => '',
        'NATIONAL'  => '',
        'NUMERIC'   => '',
        'NVARCHAR'  => '',
        'PRIMARY'   => '',
        'TEXT'      => '',
        'TIMESTAMP' => '',
        'UNIQUE'    => '',
        'VARCHAR'   => '',
        'VARYING'   => '',
    )

[line 124]

SQLite data types

Type:   array


[ Top ]

$phptype =  'sqlite'

[line 61]

The DB driver type (mysql, oci8, odbc, etc.)

Type:   string


[ Top ]



Method Detail

DB_sqlite (Constructor)   [line 159]

void DB_sqlite( )

This constructor calls $this->DB_common()

[ Top ]

affectedRows   [line 478]

int affectedRows( )

Determines the number of rows affected by a data maniuplation query

  1. is returned for queries that don't manipulate data.

  • Return: the number of rows. A DB_Error object on failure.

Overrides DB_common::affectedRows() (Determines the number of rows affected by a data maniuplation query)
[ Top ]

connect   [line 196]

int connect( array $dsn, [bool $persistent = false])

Connect to the database server, log in and open the database

Don't call this method directly. Use DB::connect() instead.

PEAR DB's sqlite driver supports the following extra DSN options:

  • mode The permissions for the database file, in four digit chmod octal format (eg "0600").
Example of connecting to a database in read-only mode:
  1.  require_once 'DB.php';
  2.  
  3.  $dsn 'sqlite:///path/and/name/of/db/file?mode=0400';
  4.  $options = array(
  5.      'portability' => DB_PORTABILITY_ALL,
  6.  );
  7.  
  8.  $db DB::connect($dsn$options);
  9.  if (PEAR::isError($db)) {
  10.      die($db->getMessage());
  11.  }

  • Return: DB_OK on success. A DB_Error object on failure.

Parameters:

array   $dsn     the data source name
bool   $persistent     should the connection be persistent?

[ Top ]

createSequence   [line 511]

int createSequence( string $seq_name)

Creates a new sequence

Overrides DB_common::createSequence() (Creates a new sequence)

Parameters:

string   $seq_name     name of the new sequence

[ Top ]

disconnect   [line 260]

bool disconnect( )

Disconnects from the database server
  • Return: TRUE on success, FALSE on failure

[ Top ]

dropSequence   [line 496]

int dropSequence( string $seq_name)

Deletes a sequence

Overrides DB_common::dropSequence() (Deletes a sequence)

Parameters:

string   $seq_name     name of the sequence to be deleted

[ Top ]

errorCode   [line 739]

integer errorCode( string $errormsg)

Determines PEAR::DB error code from the database's text error message
  • Return: the DB error number

Overrides DB_common::errorCode() (Maps native error codes to DB's portable ones)

Parameters:

string   $errormsg     the error message returned from the database

[ Top ]

errorNative   [line 724]

string errorNative( )

Gets the DBMS' native error message produced by the last query

  • Return: the DBMS' error message

Overrides DB_common::errorNative() (Gets the DBMS' native error code produced by the last query)
[ Top ]

escapeSimple   [line 628]

string escapeSimple( string $str)

Escapes a string according to the current DBMS's standards

In SQLite, this makes things safe for inserts/updates, but may cause problems when performing text comparisons against columns containing binary data. See the PHP manual for more info.


Overrides DB_common::escapeSimple() (Escapes a string according to the current DBMS's standards)

Parameters:

string   $str     the string to be escaped

[ Top ]

fetchInto   [line 350]

mixed fetchInto( resource $result, &$arr, int $fetchmode, [int $rownum = null], array $arr)

Places a row from the result set into the given array

Formating of the array and the data therein are configurable. See DB_result::fetchInto() for more information.

This method is not meant to be called directly. Use DB_result::fetchInto() instead. It can't be declared "protected" because DB_result is a separate object.

  • Return: DB_OK on success, NULL when the end of a result set is reached or on failure
  • See: DB_result::fetchInto()

Parameters:

resource   $result     the query result resource
array   $arr     the referenced array to put the data in
int   $fetchmode     how the resulting array should be indexed
int   $rownum     the row number to fetch (0 = first row)
   &$arr     

[ Top ]

freeResult   [line 408]

bool freeResult( &$result, resource $result)

Deletes the result set and frees the memory occupied by the result set

This method is not meant to be called directly. Use DB_result::free() instead. It can't be declared "protected" because DB_result is a separate object.


Parameters:

resource   $result     PHP's query result resource
   &$result     

[ Top ]

getDbFileStats   [line 590]

mixed getDbFileStats( [string $arg = ''])

Get the file stats for the current database

Possible arguments are dev, ino, mode, nlink, uid, gid, rdev, size, atime, mtime, ctime, blksize, blocks or a numeric key between

  1. and 12.

  • Return: an array on an unspecified key, integer on a passed arg and false at a stats error

Parameters:

string   $arg     the array key for stats()

[ Top ]

getSpecialQuery   [line 880]

string getSpecialQuery( string $type, [array $args = array()])

Obtains the query string needed for listing a given type of objects
  • Return: the SQL query string or null if the driver doesn't support the object type requested
  • See: DB_common::getListOf()
  • Access: protected

Overrides DB_common::getSpecialQuery() (Obtains the query string needed for listing a given type of objects)

Parameters:

string   $type     the kind of objects you want to retrieve
array   $args     SQLITE DRIVER ONLY: a private array of arguments used by the getSpecialQuery(). Do not use this directly.

[ Top ]

modifyLimitQuery   [line 652]

string modifyLimitQuery( string $query, int $from, int $count, [mixed $params = array()])

Adds LIMIT clauses to a query string according to current DBMS standards
  • Return: the query string with LIMIT clauses added
  • Access: protected

Overrides DB_common::modifyLimitQuery() (Adds LIMIT clauses to a query string according to current DBMS standards)

Parameters:

string   $query     the query to modify
int   $from     the row to start to fetching (0 = the first row)
int   $count     the numbers of rows to fetch
mixed   $params     array, string or numeric data to be used in execution of the statement. Quantity of items passed must match quantity of placeholders in query: meaning 1 placeholder for non-array parameters or 1 placeholder per array element.

[ Top ]

modifyQuery   [line 674]

string modifyQuery( string $query)

Changes a query string for various DBMS specific reasons

This little hack lets you know how many rows were deleted when running a "DELETE FROM table" query. Only implemented if the DB_PORTABILITY_DELETE_COUNT portability option is on.


Overrides DB_common::modifyQuery() (Changes a query string for various DBMS specific reasons)

Parameters:

string   $query     the query string to modify

[ Top ]

nextId   [line 546]

int nextId( string $seq_name, [boolean $ondemand = true])

Returns the next free id in a sequence

Overrides DB_common::nextId() (Returns the next free id in a sequence)

Parameters:

string   $seq_name     name of the sequence
boolean   $ondemand     when true, the seqence is automatically created if it does not exist

[ Top ]

nextResult   [line 322]

bool nextResult( resource $result)

Move the internal sqlite result pointer to the next available result
  • Return: true if a result is available otherwise return false

Parameters:

resource   $result     the valid sqlite result resource

[ Top ]

numCols   [line 434]

int numCols( resource $result)

Gets the number of columns in a result set

This method is not meant to be called directly. Use DB_result::numCols() instead. It can't be declared "protected" because DB_result is a separate object.


Parameters:

resource   $result     PHP's query result resource

[ Top ]

numRows   [line 459]

int numRows( resource $result)

Gets the number of rows in a result set

This method is not meant to be called directly. Use DB_result::numRows() instead. It can't be declared "protected" because DB_result is a separate object.


Overrides DB_common::numRows() (Determines the number of rows in a query result)

Parameters:

resource   $result     PHP's query result resource

[ Top ]

simpleQuery   [line 283]

mixed simpleQuery( string $query)

Sends a query to the database server

NOTICE: This method needs PHP's track_errors ini setting to be on. It is automatically turned on when connecting to the database. Make sure your scripts don't turn it off.

  • Return: + a PHP result resrouce for successful SELECT queries
    • the DB_OK constant for other successful queries
    • a DB_Error object on failure

Parameters:

string   $query     the SQL query string

[ Top ]

sqliteRaiseError   [line 700]

object the sqliteRaiseError( [int $errno = null])

Produces a DB_Error object regarding the current problem

Parameters:

int   $errno     if the error is being manually raised pass a DB_ERROR* constant here. If this isn't passed the error information gathered from the DBMS.

[ Top ]

tableInfo   [line 788]

array tableInfo( string $result, [int $mode = null])

Returns information about a table
  • Return: an associative array with the information requested. A DB_Error object on failure.
  • See: DB_common::tableInfo()
  • Since: Method available since Release 1.7.0

Overrides DB_common::tableInfo() (Returns information about a table or a result set)

Parameters:

string   $result     a string containing the name of a table
int   $mode     a valid tableInfo mode

[ Top ]


Documentation generated on Sat, 27 Aug 2011 14:00:19 +0000 by phpDocumentor 1.4.3. PEAR Logo Copyright © PHP Group 2004.