Функции Unified ODBC
LXIX. Функции Unified ODBC
Помимо нормальной поддержки ODBC, унифицированные функции ODBC в PHP дают доступ к различным БД, который заимствуют семантику ODBC API для реализации своего собственного API. Вместо работы с несколькими драйверами БД, которые почти идентичны, эти драйверы были объединены в отдельный набор ODBC-функций.
Примечание: ODBC при соединении с вышеуказанными БД отсутствует. Функции, которые вы используете, просто совместно используют те же имена и синтаксис, что и ODBC-функции. Исключением является iODBC. Построение PHP с поддержкой iODBC даёт вам возможность использовать любые ODBC-совместимые драйверы с вашими PHP-приложениями. iODBC обслуживается OpenLink Software. Дополнительная информация о iODBC, а также HOWTO, находятся на www.iodbc.org
Требования
Следующие БД поддерживаются функциями Unified ODBC: Adabas D, IBM DB2, iODBC, Solid и Sybase SQL Anywhere. Для доступа к этим БД у вас должны быть установлены необходимые библиотеки.
Установка
См. главу Установка на Unix-системах о конфигурировании PHP с этими БД.
Конфигурация
На поведение ODBC-функций влияют установки в глобальном файле конфигурации php.ini.
Таблица 1. Опции конфигурации Unified ODBC
Имя | По умолчанию | Изменяемая |
---|---|---|
odbc.default_db * | NULL | PHP_INI_ALL |
odbc.default_user * | NULL | PHP_INI_ALL |
odbc.default_pw * | NULL | PHP_INI_ALL |
odbc.allow_persistent | "1" | PHP_INI_SYSTEM |
odbc.check_persistent | "1" | PHP_INI_SYSTEM |
odbc.max_persistent | "-1" | PHP_INI_SYSTEM |
odbc.max_links | "-1" | PHP_INI_SYSTEM |
odbc.defaultlrl | "4096" | PHP_INI_ALL |
odbc.defaultbinmode | "1" | PHP_INI_ALL |
Примечание: вхождения, помеченные *, ещё не реализованы.
Детали и определения констант PHP_INI_* см. в ini_set().
Далее дано краткое описание директив конфигурации.
- odbc.default_db string
ODBC-источник данных, если не специфицирован в odbc_connect() или в odbc_pconnect().
- odbc.default_user string
-
Имя пользователя, если не специфицировано в odbc_connect() или в odbc_pconnect().
- odbc.default_pw string
Пароль, если не специфицирован в odbc_connect() или в odbc_pconnect().
- odbc.allow_persistent boolean
-
Разрешены ли постоянные ODBC-соединения.
- odbc.check_persistent boolean
-
Проверяет, что соединение действует, перед повторным использованием.
- odbc.max_persistent integer
-
Максимальное количество постоянных ODBC-соединений на процесс.
- odbc.max_links integer
-
Максимальное количество ODBC-соединений на процесс, включая постоянные соединения.
- odbc.defaultlrl integer
Обработка полей LONG. Специфицирует количество байт, возвращаемых переменными.
- odbc.defaultbinmode integer
Обработка двоичных данных.
Типы ресурсов
Это расширение не определяет никакие типы ресурсов.
Предопределённые константы
Это расширение не определяет никаких констант.
- Содержание
- odbc_autocommit - включает/отключает autocommit
- odbc_binmode - обработка бинарных данных столбцов
- odbc_close_all - закрывает все ODBC-сеодинения
- odbc_close - закрывает ODBC-соединение
- odbc_columnprivileges - возвращает result-идентификатор, который может использоваться для извлечения списка столбцов и ассоциированных привилегий
- odbc_columns - список имён столбцов в специфицированных таблицах. Возвращает результирующий идентификатор, содержащий эту информацию
- odbc_commit - подтверждает ODBC-транзакцию
- odbc_connect - соединяет с источником данных/datasource
- odbc_cursor - получает cursorname
- odbc_do - синоним odbc_exec()
- odbc_error - получает код последней ошибки
- odbc_errormsg - получает последнее сообщение об ошибке
- odbc_exec - подготавливает и выполняет SQL-оператор
- odbc_execute - выполняет подготовленный оператор
- odbc_fetch_array - извлекает результирующий ряд как ассоциативный массив
- odbc_fetch_into - извлекает один результирующий ряд в массив
- odbc_fetch_object - извлекает результирующий ряд как объект
- odbc_fetch_row - извлекает ряд
- odbc_field_len - получает длину (точность) поля
- odbc_field_name - получает columnname
- odbc_field_num - возвращает номер столбца
- odbc_field_precision - синоним odbc_field_len()
- odbc_field_scale - получает масштаб поля
- odbc_field_type - Datatype поля
- odbc_foreignkeys - возвращает список foreign-ключей в специфицированной таблице или список foreign-ключей в других таблицах, которые ссылаются на primary key в специфицированной таблице
- odbc_free_result - освобождает ресурсы, ассоциированные с результатом
- odbc_gettypeinfo - возвращает result-идентификатор, содержащий информацию о типах данных, поддерживаемых этим источником данных
- odbc_longreadlen - обработка LONG-столбцов
- odbc_next_result - проверяет, допустимы ли множественные результаты
- odbc_num_fields - количество столбцов в результате
- odbc_num_rows - количество рядов в результате
- odbc_pconnect - открывает постоянное соединение с БД
- odbc_prepare - готовит оператор для выполнения
- odbc_primarykeys - возвращает result-идентификатор, который может быть использован для извлечения имён столбцов, образующих primary key/первичный ключ таблицы
- odbc_procedurecolumns - запрашивает информацию о параметрах процедур
- odbc_procedures - получает список процедур, хранимых в специфицированном источнике данных. Возвращает result-идентификатор, содержащий эту информацию
- odbc_result_all - печатает результат как HTML-таблицу
- odbc_result - получает результирующие данные
- odbc_rollback - откатывает транзакцию
- odbc_setoption - настраивает ODBC-установки. Возвращает FALSE, если возникает ошибка, иначе TRUE
- odbc_specialcolumns - возвращает оптимальный набор столбцов, уникально идентифицирующий ряд таблицы, или столбцы, которые автоматически обновляются, когда транзакция обновляет любое значение в ряду
- odbc_statistics - запрашивает статистику таблицы
- odbc_tableprivileges - список таблиц и привилегий, ассоциированных с каждой таблицей
- odbc_tables - получает имён таблиц, хранимых в специфическом источнике данных. Возвращает result-идентификатор, содержащий эту информацию