Heim >Backend-Entwicklung >PHP-Tutorial >Detaillierte grafische Erklärung des PHP-Zugriffs auf gespeicherte Oracle-Prozeduren

Detaillierte grafische Erklärung des PHP-Zugriffs auf gespeicherte Oracle-Prozeduren

墨辰丷
墨辰丷Original
2018-05-26 16:24:181938Durchsuche

In diesem Artikel werden hauptsächlich relevante Informationen zum PHP-Zugriff auf gespeicherte Oracle-Prozeduren vorgestellt. Hier ist der Beispielcode, der Ihnen bei der Realisierung einer solchen Funktion hilft.

php-Zugriff Detaillierte Erklärung Beispiele für gespeicherte Oracle-Prozeduren

Zum Beispiel hat meine lokale Oracle-Datenbank ein Paket, das eine gespeicherte Prozedur enthält:

create or replace package PKG_TRANS_REL is

 -- Author : test
 -- Created : 
 -- Purpose : test

 -- Public type declarations
 PKG_NAME varchar2(20) := 'PKG_TRANS_REL';
 --存储过程,测试用
 procedure pro_GC_withdraw(in_merch_no   in varchar2,
              in_withdraw_amt in number,
              out_result   out number,
              out_errmsg   out varchar2);
end PKG_TRANS_REL;

Der Name des Pakets lautet PKG_TRANS_REL und die gespeicherte Prozedur lautet pro_GC_withdraw. Diese gespeicherte Prozedur verfügt über vier Parameter, zwei Eingabeparameter und zwei Ausgabeparameter.

Beispiel für einen Aufruf über pdo in PHP:

  $this->_pdo = new PDO(PDO_DB_DNS, PDO_DB_USER, PDO_DB_PASSWORD);
  $call = "CALL PKG_TRANS_REL.pro_GC_withdraw(?,?,?,?)";

  try{
      $stmt = $this->_pdo->prepare($call);

      $stmt->bindParam(1, $merch_no);
      $stmt->bindParam(2, $amount, PDO::PARAM_INT);

      $stmt->bindParam(3, $result, PDO::PARAM_INT, 4);
      $stmt->bindParam(4, $error_msg, PDO::PARAM_STR, 64);

      $stmt->execute();

    }catch (PDOException $e)
    {
      $msg = 'SQL:'.$e->getMessage();
      $msg = iconv('GBK','UTF-8',$msg);
      user_dump('SQL:'.$msg);
      return false;
    }

    ...

bindParam Der dritte Parameter ist standardmäßig PDO::PARAM_STR, wenn für andere Typen müssen Sie

angeben. Es ist relativ einfach, den Wert des Eingabeparameters zu übergeben, aber es ist etwas komplizierter, den Parameter zu übergeben, und Sie müssen ihn angeben die Länge .

Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, er wird für das Studium aller hilfreich sein.


Verwandte Empfehlungen:

Einfache Methoden und gekapselte Klassenbeispiele für den Betrieb einer Oracle-Datenbank mit Python

Detaillierte Erklärung von Python mit dem cx_Oracle-Modul zum Betrieb der Oracle-Datenbank

PHP-Verbindung zur Oracle-Konfiguration unter Windows

Das obige ist der detaillierte Inhalt vonDetaillierte grafische Erklärung des PHP-Zugriffs auf gespeicherte Oracle-Prozeduren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn