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

Class: MDB2_Extended

Source Location: /MDB2-2.5.0b5/MDB2/Extended.php

Class Overview

MDB2_Module_Common
   |
   --MDB2_Extended

MDB2_Extended: class which adds several high level methods to MDB2


Author(s):

Methods


Inherited Variables

Inherited Methods

Class: MDB2_Module_Common

MDB2_Module_Common::__construct()
Constructor
MDB2_Module_Common::getDBInstance()
Get the instance of MDB2 associated with the module instance

Class Details

[line 68]
MDB2_Extended: class which adds several high level methods to MDB2


[ Top ]


Method Detail

autoExecute   [line 137]

bool|MDB2_Error autoExecute( string $table, array $fields_values, [int $mode = MDB2_AUTOQUERY_INSERT], [string $where = false], [array $types = null], [string $result_class = true], [mixed $result_types = MDB2_PREPARE_MANIP])

Generate an insert, update or delete query and call prepare() and execute() on it

Parameters:

string   $table   —  name of the table
array   $fields_values   —  assoc ($key=>$value) where $key is a field name and $value its value
int   $mode   —  type of query to build MDB2_AUTOQUERY_INSERT MDB2_AUTOQUERY_UPDATE MDB2_AUTOQUERY_DELETE MDB2_AUTOQUERY_SELECT
string   $where   —  (in case of update and delete queries, this string will be put after the sql WHERE statement)
array   $types   —  that contains the types of the placeholders
string   $result_class   —  which specifies which result class to use
mixed   $result_types   —  array that contains the types of the columns in the result set or MDB2_PREPARE_RESULT, if set to MDB2_PREPARE_MANIP the query is handled as a manipulation query

[ Top ]

autoPrepare   [line 92]

resource autoPrepare( string $table, array $table_fields, [int $mode = MDB2_AUTOQUERY_INSERT], [string $where = false], [array $types = null], [mixed $result_types = MDB2_PREPARE_MANIP])

Generate an insert, update or delete query and call prepare() on it

Parameters:

string   $table   —  table
array   $table_fields   —  the fields names
int   $mode   —  type of query to build MDB2_AUTOQUERY_INSERT MDB2_AUTOQUERY_UPDATE MDB2_AUTOQUERY_DELETE MDB2_AUTOQUERY_SELECT
string   $where   —  (in case of update and delete queries, this string will be put after the sql WHERE statement)
array   $types   —  that contains the types of the placeholders
mixed   $result_types   —  array that contains the types of the columns in the result set or MDB2_PREPARE_RESULT, if set to MDB2_PREPARE_MANIP the query is handled as a manipulation query

[ Top ]

buildManipSQL   [line 200]

string buildManipSQL( string $table, ordered $table_fields, int $mode, [string $where = false])

Make automaticaly an sql query for prepare()

Example : buildManipSQL('table_sql', array('field1', 'field2', 'field3'), MDB2_AUTOQUERY_INSERT) will return the string : INSERT INTO table_sql (field1,field2,field3) VALUES (?,?,?) NB : - This belongs more to a SQL Builder class, but this is a simple facility

  • Be carefull ! If you don't give a $where param with an UPDATE/DELETE query, all the records of the table will be updated/deleted !

  • Return: sql query for prepare()
  • Access: public

Parameters:

string   $table   —  name of the table
ordered   $table_fields   —  array containing the fields names
int   $mode   —  type of query to build MDB2_AUTOQUERY_INSERT MDB2_AUTOQUERY_UPDATE MDB2_AUTOQUERY_DELETE MDB2_AUTOQUERY_SELECT
string   $where   —  (in case of update and delete queries, this string will be put after the sql WHERE statement)

[ Top ]

execParam   [line 302]

int|MDB2_Error execParam( string $query, [array $params = array()], [array $param_types = null])

Execute a parameterized DML statement.
  • Return: affected rows on success, a MDB2 error on failure
  • Access: public

Parameters:

string   $query   —  the SQL query
array   $params   —  if supplied, prepare/execute will be used with this array as execute parameters
array   $param_types   —  that contains the types of the values defined in $params

[ Top ]

executeMultiple   [line 646]

bool|MDB2_Error executeMultiple( resource $stmt, [array $params = null])

This function does several execute() calls on the same statement handle.

$params must be an array indexed numerically from 0, one execute call is done for every 'row' in the array.

If an error occurs during execute(), executeMultiple() does not execute the unfinished rows, but rather returns that error.

  • Return: true on success, a MDB2 error on failure
  • See: prepare(), execute()
  • Access: public

Parameters:

resource   $stmt   —  query handle from prepare()
array   $params   —  numeric array containing the data to insert into the query

[ Top ]

getAfterID   [line 708]

int|MDB2_Error getAfterID( mixed $id, string $table, [string $field = null])

Returns the autoincrement ID if supported or $id
  • Return: id on success, a MDB2 error on failure
  • Access: public

Parameters:

mixed   $id   —  value as returned by getBeforeId()
string   $table   —  name of the table into which a new row was inserted
string   $field   —  name of the field into which a new row was inserted

[ Top ]

getAll   [line 493]

array|MDB2_Error getAll( string $query, [array $types = null], [array $params = array()], [array $param_types = null], [int $fetchmode = MDB2_FETCHMODE_DEFAULT], [bool $rekey = false], [bool $force_array = false], [bool $group = false])

Fetch all the rows returned from a query.
  • Return: data on success, a MDB2 error on failure
  • Access: public

Parameters:

bool   $force_array   —  used only when the query returns exactly two columns. If true, the values of the returned array will be one-element arrays instead of scalars.
bool   $group   —  if true, the values of the returned array is wrapped in another array. If the same key value (in the first column) repeats itself, the values will be appended to this array instead of overwriting the existing values.
string   $query   —  the SQL query
array   $types   —  that contains the types of the columns in the result set
array   $params   —  if supplied, prepare/execute will be used with this array as execute parameters
array   $param_types   —  that contains the types of the values defined in $params
int   $fetchmode   —  the fetch mode to use
bool   $rekey   —  if set to true, the $all will have the first column as its first dimension

[ Top ]

getAssoc   [line 599]

array|MDB2_Error getAssoc( string $query, [array $types = null], [array $params = array()], [array $param_types = null], [ $fetchmode = MDB2_FETCHMODE_DEFAULT], [bool $force_array = false], [bool $group = false])

Fetch the entire result set of a query and return it as an associative array using the first column as the key.

If the result set contains more than two columns, the value will be an array of the values from column 2-n. If the result set contains only two columns, the returned value will be a scalar with the value of the second column (unless forced to an array with the $force_array parameter). A MDB2 error code is returned on errors. If the result set contains fewer than two columns, a MDB2_ERROR_TRUNCATED error is returned.

For example, if the table 'mytable' contains:

   ID      TEXT       DATE
 --------------------------------
   1       'one'      944679408
   2       'two'      944679408
   3       'three'    944679408
Then the call getAssoc('SELECT id,text FROM mytable') returns:
    array(
      '1' => 'one',
      '2' => 'two',
      '3' => 'three',
    )
...while the call getAssoc('SELECT id,text,date FROM mytable') returns:
    array(
      '1' => array('one', '944679408'),
      '2' => array('two', '944679408'),
      '3' => array('three', '944679408')
    )

If the more than one row occurs with the same value in the first column, the last row overwrites all previous ones by default. Use the $group parameter if you don't want to overwrite like this. Example:

 getAssoc('SELECT category,id,name FROM mytable', null, null
           MDB2_FETCHMODE_ASSOC, false, true) returns:
    array(
      '1' => array(array('id' => '4', 'name' => 'number four'),
                   array('id' => '6', 'name' => 'number six')
             ),
      '9' => array(array('id' => '4', 'name' => 'number four'),
                   array('id' => '6', 'name' => 'number six')
             )
    )

Keep in mind that database functions in PHP usually return string values for results regardless of the database's internal type.

  • Return: data on success, a MDB2 error on failure
  • Access: public

Parameters:

bool   $force_array   —  used only when the query returns exactly two columns. If TRUE, the values of the returned array will be one-element arrays instead of scalars.
bool   $group   —  if TRUE, the values of the returned array is wrapped in another array. If the same key value (in the first column) repeats itself, the values will be appended to this array instead of overwriting the existing values.
string   $query   —  the SQL query
array   $types   —  that contains the types of the columns in the result set
array   $params   —  if supplied, prepare/execute will be used with this array as execute parameters
array   $param_types   —  that contains the types of the values defined in $params
   $fetchmode   — 

[ Top ]

getBeforeID   [line 675]

int|MDB2_Error getBeforeID( string $table, [string $field = null], [bool $ondemand = true], [bool $quote = true])

Returns the next free id of a sequence if the RDBMS does not support auto increment
  • Return: id on success, a MDB2 error on failure
  • Access: public

Parameters:

string   $table   —  name of the table into which a new row was inserted
string   $field   —  name of the field into which a new row was inserted
bool   $ondemand   —  when true the sequence is automatic created, if it not exists
bool   $quote   —  if the returned value should be quoted

[ Top ]

getCol   [line 438]

array|MDB2_Error getCol( string $query, [string $type = null], [array $params = array()], [array $param_types = null], [int|string $colnum = 0])

Fetch a single column from a result set and return it as an indexed array.
  • Return: data on success, a MDB2 error on failure
  • Access: public

Parameters:

string   $query   —  the SQL query
string   $type   —  that contains the type of the column in the result set
array   $params   —  if supplied, prepare/execute will be used with this array as execute parameters
array   $param_types   —  that contains the types of the values defined in $params
int|string   $colnum   —  which column to return

[ Top ]

getOne   [line 345]

scalar|MDB2_Error getOne( string $query, [string $type = null], [array $params = array()], [array $param_types = null], [int|string $colnum = 0])

Fetch the first column of the first row of data returned from a query.

Takes care of doing the query and freeing the results when finished.

  • Return: data on success, a MDB2 error on failure
  • Access: public

Parameters:

string   $query   —  the SQL query
string   $type   —  that contains the type of the column in the result set
array   $params   —  if supplied, prepare/execute will be used with this array as execute parameters
array   $param_types   —  that contains the types of the values defined in $params
int|string   $colnum   —  which column to return

[ Top ]

getRow   [line 392]

array|MDB2_Error getRow( string $query, [array $types = null], [array $params = array()], [array $param_types = null], [int $fetchmode = MDB2_FETCHMODE_DEFAULT])

Fetch the first row of data returned from a query. Takes care of doing the query and freeing the results when finished.
  • Return: data on success, a MDB2 error on failure
  • Access: public

Parameters:

string   $query   —  the SQL query
array   $types   —  that contains the types of the columns in the result set
array   $params   —  if supplied, prepare/execute will be used with this array as execute parameters
array   $param_types   —  that contains the types of the values defined in $params
int   $fetchmode   —  the fetch mode to use

[ Top ]

limitQuery   [line 273]

MDB2_Result|MDB2_Error limitQuery( string $query, array $types, integer $limit, [integer $offset = 0], [string $result_class = true], [mixed $result_wrap_class = false])

Generates a limited query
  • Return: result set on success, a MDB2 error on failure
  • Access: public

Parameters:

string   $query   —  query
array   $types   —  that contains the types of the columns in the result set
integer   $limit   —  the numbers of rows to fetch
integer   $offset   —  the row to start to fetching
string   $result_class   —  which specifies which result class to use
mixed   $result_wrap_class   —  string which specifies which class to wrap results in

[ Top ]


Documentation generated on Wed, 09 Dec 2015 23:02:44 +0000 by phpDocumentor 1.4.4. PEAR Logo Copyright © PHP Group 2004.