PHP は値を ORACLE ストアド プロシージャに渡します
私の顧客は、ストアド プロシージャ名 (pro)、データベース名、TNSNAME、アクセス パスワード、データ テーブル名、および 5 を私に教えてくれました。フィールド名。
次に、私が開発した PHP プログラム上でこの ORACLE ストアド プロシージャをリモートで呼び出したいと思います。目的は非常に簡単で、5 つの PHP 変数値をストアド プロシージャの 5 つのフィールドに渡すことです。 (pro)、S_a、S_b、S_c、S_d、S_e
さらに、上記の 5 つの値を受け取った後、ストアド プロシージャ (pro) はフィールド名 S_F
の結果値を返します。
具体的なコードは何ですか?
問題を解決してくれる専門家にポイントを全額支払います! !
-----解決策---------
$user = "scott" //データベースのユーザー名; $password = "タイガー" //パスワード; $conn_str = "tnsname"; //接続文字列 (cstr : Connection_STRing) $remote = true //リモート接続するかどうか if ($remote) { $conn = OCILogon($user, $password, $conn_str); } それ以外 { $conn = OCILogon($user, $password); } $a='S_a'; $b='S_b'; $c='S_c'; $d='S_d'; $e='S_e'; $sql_sp = "BEGIN PROC_TEST(:a, :b,:c,:d,:e); END;"; //解析する $stmt = OCIParse($conn, $sql_sp); //バインディングを実行する OCIBindByName($stmt, ":a", $a, 30); OCIBindByName($stmt, ":b", $b, 30); OCIBindByName($stmt, ":c", $c, 30); OCIBindByName($stmt, ":d", $d, 30); OCIBindByName($stmt, ":e", $e, 30); OCIExecute($stmt);<br><b>私の例外ネットワーク推奨ソリューション: </b>Oracle ストアド プロシージャ、http://www.myException.cn/oracle-develop/177537.html <div class="clear"></div>