Heim > Artikel > Backend-Entwicklung > Wie rufe ich eine gespeicherte MySQL-Prozedur aus PHP-Code auf?
So rufen Sie eine gespeicherte MySQL-Prozedur aus PHP-Code auf
Hintergrund:
Aufruf gespeicherter MySQL-Prozeduren aus Mit PHP-Code können Sie komplexe Datenbankoperationen effektiv ausführen. Dieser Artikel zeigt den besten Ansatz zum Aufrufen einer gespeicherten Prozedur aus PHP mit den MySQL-Versionen 4.1.11 (Client) und 5.0.45 (Server).
Definition der gespeicherten Prozedur:
Die Beispiel für eine gespeicherte Prozedur, getTreeNodeName, gibt den Namen eines Knotens anhand seiner ID zurück:
DELIMITER $$ DROP FUNCTION IF EXISTS `getNodeName` $$ CREATE FUNCTION `getTreeNodeName`(`nid` int) RETURNS varchar(25) CHARSET utf8 BEGIN DECLARE nodeName varchar(25); SELECT name into nodeName FROM tree WHERE id = nid; RETURN nodeName; END $$ DELIMITER ;
PHP-Code zum Aufrufen der gespeicherten Prozedur:
Um die getTreeNodeName-Prozedur aufzurufen, Sie können die MySQL-Erweiterung anstelle der veralteten MySQL-Erweiterung verwenden. Hier ist der PHP-Code:
<?php // enable error reporting mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT); // connect to database $connection = mysqli_connect("hostname", "user", "password", "db", "port"); // run the stored procedure $result = mysqli_query($connection, "CALL getTreeNodeName"); // loop the result set while ($row = mysqli_fetch_array($result)) { echo $row[0] . " - " . $row[1]; // replace with appropriate column indices }
Hinweis:
Viele Benutzer haben Probleme mit der Verwendung der älteren Funktionen mysql_connect, mysql_query und mysql_fetch_array gemeldet. Es wird empfohlen, stattdessen die MySQLi-Erweiterung zu verwenden.
Das obige ist der detaillierte Inhalt vonWie rufe ich eine gespeicherte MySQL-Prozedur aus PHP-Code auf?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!