array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'ja', ), 'this' => array ( 0 => 'function.odbc-execute.php', 1 => 'odbc_execute', ), 'up' => array ( 0 => 'ref.uodbc.php', 1 => 'ODBC 関数', ), 'prev' => array ( 0 => 'function.odbc-exec.php', 1 => 'odbc_exec', ), 'next' => array ( 0 => 'function.odbc-fetch-array.php', 1 => 'odbc_fetch_array', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'ja', 'path' => 'reference/uodbc/functions/odbc-execute.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 4, PHP 5, PHP 7, PHP 8)
odbc_execute — プリペアドステートメントを実行する
statement
odbc_prepare() で取得した結果 ID リソース。
params
プリペアドステートメントの中のプレースホルダが、
params
内のパラメータで順に置き換えられます。
この関数をコールした際に、配列の要素は文字列に変換されます。
params
の中でシングルクォートで括られたデータがある場合、
それはファイル名と解釈されます。そのファイルの内容が、
該当するプレースホルダのデータとしてデータベースサーバーに送信されます。
例1 odbc_execute() および odbc_prepare() の例
次のコードは、myproc の 3 つのパラメータがすべて IN
パラメータである場合にのみ $success
が true
となります。
<?php
$a = 1;
$b = 2;
$c = 3;
$stmt = odbc_prepare($conn, 'CALL myproc(?,?,?)');
$success = odbc_execute($stmt, array($a, $b, $c));
?>
INOUT や OUT パラメータを用いるストアドプロシージャをコールしたい場合は、 各データベース専用の拡張モジュール (たとえば Oracle なら oci8) を使うようにしましょう。