(PHP 4 >= 4.0.6, PHP 5 <= 5.0.5, PECL dbx >= 1.1.0)
dbx_query — Посылает запрос и извлекает возвращенные строки (если есть)
Посылает запрос и извлекает возвращенные строки.
link_identifierСсылка на соединение, открытое с помощью dbx_connect()
sql_statementSQL запрос.
Данные в запросе должны быть корректно экранированы.
flags
       Параметр flags используется для контроля количества
       возвращаемой информации. Можно использовать любую комбинацию из 
       нижеперечисленных констант, объедененных побитовым ИЛИ (|).
       Флаги DBX_COLNAMES_* переопределяют настройку dbx.colnames_case в php.ini.
       
DBX_RESULT_INDEX
         DBX_RESULT_ASSOC, возвращенный
           объект будет также содержать информацию, относящуюся к
           DBX_RESULT_INFO, даже если она не будет задана.
          
         DBX_RESULT_INFO
         DBX_RESULT_ASSOC
         DBX_RESULT_UNBUFFERED
         DBX_COLNAMES_UNCHANGED
         DBX_COLNAMES_UPPERCASE
         DBX_COLNAMES_LOWERCASE
         DBX_RESULT_INDEX используется всегда,
       независимо от выставленного параметра flags.
       Это значит, что только следующий комбинации имеют смысл:
       DBX_RESULT_INDEX
         
        DBX_RESULT_INDEX |
          DBX_RESULT_INFO
         
        DBX_RESULT_INDEX |
          DBX_RESULT_INFO |
          DBX_RESULT_ASSOC - по умолчанию, если
          flags не задан.
         
        
   dbx_query() возвращает либо объект, либо 1 в
   случае успеха и 0 в обратной ситуации. Объект возвращается
   только если sql_statement является запросом, возвращающим
   результирующий набор (т.е. запрос типа SELECT, если он не возвращает пустой набор). 
  
   Возвращенный объект содержит четыре, либо пять свойств, 
   в зависимости от параметра flags:
   
Это рабочий обработчик соединения с базой данных, который можно использовать с родными функциями расширения базы данных, в обход dbx.
<?php
$result = dbx_query($link, "SELECT id FROM table");
mysql_field_len($result->handle, 0);
?>
Количество столбцов и строк в результирующем наборе соответственно.
<?php
$result = dbx_query($link, 'SELECT id FROM table');
echo $result->rows; // количество строк
echo $result->cols; // количество столбцов
?>
DBX_RESULT_INFO
       или DBX_RESULT_ASSOC переданы в параметр
       flags. Представляет из себя двумерный массив, имеющий
       две строки (name и type), содержащие информацию
       о столбцах.
      
      Пример #1 Вывод всех имен и типов столбцов
<?php
$result = dbx_query($link, 'SELECT id FROM table',
                     DBX_RESULT_INDEX | DBX_RESULT_INFO);
for ($i = 0; $i < $result->cols; $i++ ) {
    echo $result->info['name'][$i] . "\n";
    echo $result->info['type'][$i] . "\n";  
}
?>
flags.
       Если задана DBX_RESULT_ASSOC, можно обращаться к столбцам
       по имени - $result->data[2]["field_name"].
      
      Пример #2 Вывод содержимого свойства data в таблицу HTML
<?php
$result = dbx_query($link, 'SELECT id, parentid, description FROM table');
echo "<table>\n";
foreach ($result->data as $row) {
    echo "<tr>\n";
    foreach ($row as $field) {
        echo "<td>$field</td>";
    }
    echo "</tr>\n";
}
echo "</table>\n";
?>
Пример #3 Как обрабатывать UNBUFFERED запросы
<?php
$result = dbx_query ($link, 'SELECT id, parentid, description FROM table', DBX_RESULT_UNBUFFERED);
echo "<table>\n";
while ($row = dbx_fetch_row($result)) {
    echo "<tr>\n";
    foreach ($row as $field) {
        echo "<td>$field</td>";
    }
    echo "</tr>\n";
}
echo "</table>\n";
?>
| Версия | Описание | 
|---|---|
| 5.0.0 | Добавлена константа DBX_RESULT_UNBUFFERED. | 
| 4.3.0 | Добавлены константы DBX_COLNAMES_UNCHANGED,DBX_COLNAMES_UPPERCASEиDBX_COLNAMES_LOWERCASE. | 
Пример #4 Как обрабатывать возвращенное значение
<?php
$link   = dbx_connect(DBX_ODBC, "", "db", "username", "password")
    or die("Could not connect");
$result = dbx_query($link, 'SELECT id, parentid, description FROM table');
if (is_object($result) ) {
    // ... do some stuff here, see detailed examples below ...
    // first, print out field names and types 
    // then, draw a table filled with the returned field values
} else {
    exit("Query failed");
}
dbx_close($link);
?>
Замечание:
Всегда внимательно изучайте документацию по расширению для используемой базы данных.
Имена столбцов Oracle возвращаются в нижнем регистре.