Class: MDB_QueryTool_Query
Source Location: /MDB_QueryTool-1.2.2/QueryTool/Query.php
MDB_QueryTool_Query class
Author(s):
Copyright:
- 2004-2007 Lorenzo Alberton
|
|
|
Child classes:
|
Inherited Variables
|
Inherited Methods
|
Class Details
Class Variables
Method Detail
MDB_QueryTool_Query (Constructor) [line 274]
MDB_QueryTool_Query MDB_QueryTool_Query(
[mixed
$dsn = false], [array
$options = array()], [integer
$MDBversion = 1])
|
|
Constructor
Parameters:
add [line 737]
mixed add(
array
$newData)
|
|
add a new member in the DB
Parameters:
addHaving [line 1211]
void addHaving(
[string
$what = '*'], [string
$connectString = ' AND '])
|
|
Extend the current HAVING clause. This is very useful, when you are building this clause from different places and don't want to overwrite the currently set HAVING clause, but extend it.
Parameters:
addJoin [line 1385]
void addJoin(
string
$table, string
$where, [string
$type = 'default'])
|
|
adds a table and a where clause that shall be used for the join instead of calling setJoin(array(table1,table2),'<where clause1> AND <where clause2>') you can also call setJoin(table1,'<where clause1>') addJoin(table2,'<where clause2>') or where it makes more sense is to build a query which is made out of a left join and a standard join setLeftJoin(table1,'<where clause1>') // results in ... FROM $this->table LEFT JOIN table ON <where clause1> addJoin(table2,'<where clause2>') // results in ... FROM $this->table,table2 LEFT JOIN table ON <where clause1> WHERE <where clause2>
Parameters:
addLeftJoin [line 1291]
void addLeftJoin(
string
$table, string
$where, [string
$type = 'left'])
|
|
Add a LEFT JOIN clause
Parameters:
addMultiple [line 793]
mixed addMultiple(
array
$data)
|
|
adds multiple new members in the DB
Parameters:
addOrder [line 1141]
void addOrder(
[string
$orderCondition = ''], [boolean
$desc = false])
|
|
Add a ORDER BY parameter to the query.
Parameters:
addSelect [line 1491]
void addSelect(
[string
$what = '*'], [string
$connectString = ','])
|
|
add a string to the select-part of the query and connects it to an existing string using the $connectString, which by default is a comma. (SELECT xxx FROM - xxx is the select-part of a query)
Parameters:
addWhere [line 1069]
void addWhere(
string
$where, [string
$condition = 'AND'])
|
|
Only adds a string to the WHERE clause
Parameters:
addWhereSearch [line 1096]
void addWhereSearch(
string
$column, string
$string, [string
$connectString = 'AND'])
|
|
add a WHERE-LIKE clause which works like a search for the given string i.e. calling it like this: $this->addWhereSearch('name', 'otto hans') produces a WHERE clause like this one UPPER(name) LIKE "%OTTO%HANS%" so the search finds the given string
Parameters:
connect [line 318]
void connect(
mixed
$dsn, [array
$options = array()], [integer
$MDBversion = 1])
|
|
use this method if you want to connect manually
Parameters:
debug [line 1752]
void debug(
string
$string)
|
|
overwrite this method and i.e. print the query $string to see the final query
Parameters:
execute [line 2408]
resultSet execute(
[string
$query = null], [string
$method = 'queryAll'])
|
|
Execute the query
Parameters:
get [line 395]
mixed get(
integer
$id, [string
$column = ''])
|
|
get the data of a single entry if the second parameter is only one column the result will be returned directly not as an array!
Parameters:
getAll [line 476]
mixed getAll(
[int
$from = 0], [int
$count = 0], [string
$method = 'getAll'])
|
|
get all entries from the DB for sorting use setOrder!!!, the last 2 parameters are deprecated
Parameters:
getCol [line 506]
mixed getCol(
[string
$column = null], [int
$from = 0], [int
$count = 0])
|
|
this method only returns one column, so the result will be a one dimensional array this does also mean that using setSelect() should be set to *one* column, the one you want to have returned a most common use case for this could be: $table->setSelect('id'); $ids = $table->getCol(); OR $ids = $table->getCol('id'); so ids will be an array with all the id's
Parameters:
getCount [line 532]
get the number of entries
getDbInstance [line 349]
object MDB &getDbInstance(
)
|
|
Get a MDB[2] object instance
getDefaultValues [line 576]
array getDefaultValues(
)
|
|
return an empty element where all the array elements do already exist corresponding to the columns in the DB
getDontSelect [line 1540]
Get the columns that shall not be selected
getEmptyElement [line 596]
getGroup [line 1456]
gets the group condition which is used for the current instance
getHaving [line 1190]
gets the HAVING definition which is used for the current instance
getIndex [line 2646]
getJoin [line 1332]
array getJoin(
[string
$what = null])
|
|
gets the join-condition
Parameters:
getLimit [line 1016]
getMultiple [line 429]
mixed getMultiple(
array
$ids, [string
$column = ''])
|
|
gets the data of the given ids
Parameters:
getOne [line 455]
get the first value of the first row
getOption [line 1614]
string getOption(
string
$option)
|
|
Get the given option
Parameters:
getOrder [line 1160]
gets the ORDER BY condition which is used for the current instance
getQueryString [line 609]
Render the current query and return it as a string.
getSelect [line 1510]
getTable [line 1422]
gets the table this class is currently working on
getTableShortName [line 1971]
string getTableShortName(
string
$table)
|
|
Gets the short name for a table get the short name for a table, this is needed to properly build the 'AS' parts in the select query
Parameters:
getTableSpec [line 1999]
array getTableSpec(
[boolean
$shortNameIndexed = true], [array
$tables = array()])
|
|
gets the tableSpec either indexed by the short name or the name returns the array for the tables given as parameter or if no parameter given for all tables that exist in the tableSpec
Parameters:
getWhere [line 1051]
Gets the WHERE condition which is used for the current instance
metadata [line 1774]
resultSet metadata(
[string
$table = ''])
|
|
!!!! query COPIED FROM db_oci8.inc - from PHPLIB !!!!
Parameters:
newEntity [line 2818]
Returns a new entity including an instance to QueryTool
remove [line 878]
boolean remove(
mixed
$data, [string
$whereCol = ''])
|
|
removes a member from the DB
Parameters:
removeAll [line 916]
removeMultiple [line 934]
resultSet removeMultiple(
array
$ids, [string
$colName = ''])
|
|
remove the datasets with the given IDs
Parameters:
removePrimary [line 966]
boolean removePrimary(
integer
$id, string
$colName, object
$atLeastOneObject)
|
|
removes a member from the DB and calls the remove methods of the given objects so all rows in another table that refer to this table are erased too
Parameters:
reset [line 1556]
void reset(
[array
$what = array()])
|
|
reset all the set* settings; with no parameter given, it resets them all.
Parameters:
returnResult [line 2517]
mixed returnResult(
object
$result)
|
|
Return the chosen result type
Parameters:
save [line 683]
save data, calls either update or add if the primaryCol is given in the data this method knows that the data passed to it are meant to be updated (call 'update'), otherwise it will call the method 'add'. If you dont like this behaviour simply stick with the methods 'add' and 'update' and ignore this one here. This method is very useful when you have validation checks that have to be done for both adding and updating, then you can simply overwrite this method and do the checks in here, and both cases will be validated first.
Parameters:
setDbInstance [line 366]
void setDbInstance(
object
&$dbh)
|
|
Setup using an existing connection. this also sets the MDB[2]_FETCHMODE_ASSOC since this class needs this to be set!
Parameters:
setDontSelect [line 1526]
void setDontSelect(
[string
$what = ''])
|
|
Set the columns that shall not be selected
Parameters:
setErrorCallback [line 2696]
void setErrorCallback(
[string
$param = ''])
|
|
set both callbacks
Parameters:
setErrorLogCallback [line 2712]
void setErrorLogCallback(
[string
$param = ''])
|
|
set error log callback
Parameters:
setErrorSetCallback [line 2728]
void setErrorSetCallback(
[string
$param = ''])
|
|
set error set callback
Parameters:
setGroup [line 1438]
void setGroup(
[string
$group = ''])
|
|
sets the group-by condition
Parameters:
setHaving [line 1176]
void setHaving(
[string
$having = ''])
|
|
sets the HAVING definition
Parameters:
setIndex [line 2618]
void setIndex(
[string
$key = null])
|
|
format the result to be indexed by $key NOTE: be careful, when using this you should be aware, that if you use an index which's value appears multiple times you may loose data since a key cant exist multiple times!! the result for a result to be indexed by a key(=columnName) (i.e. 'relationtoMe') which's values are 'brother' and 'sister' or alike normally returns this: $res['brother'] = array('name'=>'xxx') $res['sister'] = array('name'=>'xxx') but if the column 'relationtoMe' contains multiple entries for 'brother' then the returned dataset will only contain one brother, since the value from the column 'relationtoMe' is used and which 'brother' you get depends on a lot of things, like the sortorder, how the db saves the data, and whatever else you can also set indexes which depend on 2 columns, simply pass the parameters like 'table1.id,table2.id' it will be used as a string for indexing the result and the index will be built using the 2 values given, so a possible index might be '1,2' or '2108,29389' this way you can access data which have 2 primary keys. Be sure to remember that the index is a string!
Parameters:
setJoin [line 1234]
void setJoin(
[mixed
$table = null], [string
$where = null], [string
$joinType = 'default'])
|
|
sets a join-condition
Parameters:
setLeftJoin [line 1273]
void setLeftJoin(
[string
$table = null], [string
$where = null])
|
|
if you do a left join on $this->table you will get all entries from $this->table, also if there are no entries for them in the joined table if both parameters are not given the left-join will be removed NOTE: be sure to only use either a right or a left join
Parameters:
setLimit [line 998]
void setLimit(
[integer
$from = 0], [integer
$count = 0])
|
|
sets query limits
Parameters:
setOption [line 1593]
void setOption(
string
$option, mixed
$value)
|
|
set mode the class shall work in currently we have the modes: 'raw' does not quote the data before building the query
Parameters:
setOrder [line 1124]
void setOrder(
[string
$orderCondition = ''], [boolean
$desc = false])
|
|
sets the ORDER BY condition which is used for the current instance
Parameters:
setReturnClass [line 2546]
boolean setReturnClass(
string
$name)
|
|
Sets the name of the class to use as result object
Parameters:
setRightJoin [line 1316]
void setRightJoin(
[string
$table = null], [string
$where = null])
|
|
see setLeftJoin for further explaination on what a left/right join is NOTE: be sure to only use either a right or a left join //FIXXME check if the above sentence is necessary and if SQL doesn't //allow the use of both
Parameters:
setSelect [line 1472]
void setSelect(
[string
$what = '*'])
|
|
limit the result to return only the columns given in $what
Parameters:
setTable [line 1408]
void setTable(
string
$table)
|
|
sets the table this class is currently working on
Parameters:
setWhere [line 1033]
void setWhere(
[string
$whereCondition = ''])
|
|
Sets the where condition which is used for the current instance
Parameters:
update [line 703]
boolean update(
array
$newData)
|
|
update the member data of a data set
Parameters:
useResult [line 2664]
void useResult(
[string
$type = 'array'])
|
|
Choose the type of the returned result
Parameters:
writeLog [line 2456]
void writeLog(
[string
$text = 'START'])
|
|
Write events to the logfile. It does some additional work, like time measuring etc. to see some additional info
Parameters:
_checkColumns [line 1713]
array _checkColumns(
array
$newData, [integer
$method = 'unknown'])
|
|
checks if the columns which are given as the array's indexes really exist if not it will be unset anyway
Parameters:
_makeIndexed [line 2567]
mixed &_makeIndexed(
mixed
&$data)
|
|
Make data indexed
Parameters:
Documentation generated on Sat, 12 Jan 2008 08:30:19 -0500 by phpDocumentor 1.4.0. PEAR Logo Copyright © PHP Group 2004.
|
|