56 define(
'MDB2_AUTOQUERY_INSERT', 1);
 
   57 define(
'MDB2_AUTOQUERY_UPDATE', 2);
 
   58 define(
'MDB2_AUTOQUERY_DELETE', 3);
 
   59 define(
'MDB2_AUTOQUERY_SELECT', 4);
 
  103         return $db->prepare(
$query, $types, $result_types);
 
  132         $where = 
false, $types = null, $result_class = 
true, $result_types = 
MDB2_PREPARE_MANIP)
 
  134         $fields_values = (array)$fields_values;
 
  136             if (is_array($result_types)) {
 
  137                 $keys = array_keys($result_types);
 
  138             } elseif (!empty($fields_values)) {
 
  139                 $keys = $fields_values;
 
  144             $keys = array_keys($fields_values);
 
  146         $params = array_values($fields_values);
 
  147         if (empty($params)) {
 
  160             $stmt = $this->
autoPrepare($table, $keys, $mode, $where, $types, $result_types);
 
  164             $result =& $stmt->execute($params, $result_class);
 
  201         if ($db->options[
'quote_identifier']) {
 
  202             $table = $db->quoteIdentifier($table);
 
  205         if (!empty($table_fields) && $db->options[
'quote_identifier']) {
 
  206             foreach ($table_fields as $key => $field) {
 
  207                 $table_fields[$key] = $db->quoteIdentifier($field);
 
  211         if ($where !== 
false && !is_null($where)) {
 
  212             if (is_array($where)) {
 
  213                 $where = implode(
' AND ', $where);
 
  215             $where = 
' WHERE '.$where;
 
  220             if (empty($table_fields)) {
 
  222                 'Insert requires table fields', __FUNCTION__);
 
  224             $cols = implode(
', ', $table_fields);
 
  225             $values = 
'?'.str_repeat(
', ?', (count($table_fields) - 1));
 
  226             return 'INSERT INTO '.$table.
' ('.$cols.
') VALUES ('.$values.
')';
 
  229             if (empty($table_fields)) {
 
  231                 'Update requires table fields', __FUNCTION__);
 
  233             $set = implode(
' = ?, ', $table_fields).
' = ?';
 
  234             $sql = 
'UPDATE '.$table.
' SET '.$set.$where;
 
  238             $sql = 
'DELETE FROM '.$table.$where;
 
  242             $cols = !empty($table_fields) ? implode(
', ', $table_fields) : 
'*';
 
  243             $sql = 
'SELECT '.$cols.
' FROM '.$table.$where;
 
  248                 'Non existant mode', __FUNCTION__);
 
  268         $result_wrap_class = 
false)
 
  275         $result = $db->setLimit($limit, $offset);
 
  279         $result =& $db->query(
$query, $types, $result_class, $result_wrap_class);
 
  304         settype($params, 
'array');
 
  305         if (empty($params)) {
 
  314         $result = $stmt->execute($params);
 
  341         $param_types = null, $colnum = 0)
 
  348         settype($params, 
'array');
 
  349         settype($type, 
'array');
 
  350         if (empty($params)) {
 
  351             return $db->queryOne(
$query, $type, $colnum);
 
  354         $stmt = $db->prepare(
$query, $param_types, $type);
 
  359         $result = $stmt->execute($params);
 
  364         $one = 
$result->fetchOne($colnum);
 
  395         settype($params, 
'array');
 
  396         if (empty($params)) {
 
  397             return $db->queryRow(
$query, $types, $fetchmode);
 
  400         $stmt = $db->prepare(
$query, $param_types, $types);
 
  405         $result = $stmt->execute($params);
 
  434         $param_types = null, $colnum = 0)
 
  441         settype($params, 
'array');
 
  442         settype($type, 
'array');
 
  443         if (empty($params)) {
 
  444             return $db->queryCol(
$query, $type, $colnum);
 
  447         $stmt = $db->prepare(
$query, $param_types, $type);
 
  452         $result = $stmt->execute($params);
 
  457         $col = 
$result->fetchCol($colnum);
 
  490         $rekey = 
false, $force_array = 
false, $group = 
false)
 
  497         settype($params, 
'array');
 
  498         if (empty($params)) {
 
  499             return $db->queryAll(
$query, $types, $fetchmode, $rekey, $force_array, $group);
 
  502         $stmt = $db->prepare(
$query, $param_types, $types);
 
  507         $result = $stmt->execute($params);
 
  512         $all = 
$result->fetchAll($fetchmode, $rekey, $force_array, $group);
 
  602         settype($params, 
'array');
 
  603         if (empty($params)) {
 
  604             return $db->queryAll(
$query, $types, $fetchmode, 
true, $force_array, $group);
 
  607         $stmt = $db->prepare(
$query, $param_types, $types);
 
  612         $result = $stmt->execute($params);
 
  617         $all = 
$result->fetchAll($fetchmode, 
true, $force_array, $group);
 
  643         for ($i = 0, $j = count($params); $i < $j; $i++) {
 
  644             $result = $stmt->execute($params[$i]);
 
  667     function getBeforeID($table, $field = null, $ondemand = 
true, $quote = 
true)
 
  674         if ($db->supports(
'auto_increment') !== 
true) {
 
  675             $seq = $table.(empty($field) ? 
'' : 
'_'.$field);
 
  676             $id = $db->nextID($seq, $ondemand);
 
  680             return $db->quote($id, 
'integer');
 
  707         if ($db->supports(
'auto_increment') !== 
true) {
 
  710         return $db->lastInsertID($table, $field);