(PHP 4, PHP 5, PHP 7, PHP 8)
odbc_prepare — Подготавливает запрос к выполнению
Функция подготавливает запрос к выполнению. Объект ODBC с результатом затем передают в функцию odbc_execute() для выполнения запроса.
Отдельные базы данных наподобие IBM DB2, MS SQL Server и Oracle поддерживают хранимые процедуры, которые принимают in-, inout- и out-параметры, как определяет спецификация протокола ODBC. Однако драйвер Unified ODBC пока поддерживает для хранимых процедур только in-параметры.
odbc
Объект ODBC-соединения. Подробнее о коннекторе рассказывает описание функции odbc_connect().
query
Подготавливаемый запрос в виде строки.
Функция возвращает объект ODBC с результатом, если подготовка SQL-команды выполнилась
успешно. Функция возвращает значение false
, если возникла ошибка.
Версия | Описание |
---|---|
8.4.0 |
Параметр odbc теперь ожидает экземпляр соединения Odbc\Connection;
раньше ожидался аргумент с типом resource.
|
8.4.0 | Функция теперь возвращает объект с результатом ODBC-запроса Odbc\Result; раньше возвращалось значение с типом resource. |
Пример #1 Пример подготовки запроса к выполнению функциями odbc_execute() и odbc_prepare()
В следующем примере переменной $success присвоится значение true
,
только если каждый из трёх параметров в списке параметров для выполнения хранимой процедуры myproc
относится ко входному in-параметру, — передаётся в процедуру по значению:
<?php
$a = 1;
$b = 2;
$c = 3;
$stmt = odbc_prepare($conn, 'CALL myproc(?, ?, ?)');
$success = odbc_execute($stmt, array($a, $b, $c));
?>
Для вызова хранимой процедуры с inout-параметром, который передаётся по ссылке, или с out-параметром, который возвращается из процедуры по значению, лучше отправить запрос через родной модуль базы данных наподобие модуля oci8 для СУБД Oracle.