MySQL et PHP sont des technologies souvent utilisées dans le développement Web. Parmi elles, les procédures stockées sont une fonctionnalité importante de MySQL. Dans cet article, nous présenterons les procédures stockées MySQL et les implémenterons en combinaison avec le langage PHP.
La procédure stockée MySQL est un bloc de code SQL réutilisable qui peut être défini et appelé dans le programme. C'est similaire à une fonction qui accepte des paramètres et renvoie une valeur. Les procédures stockées peuvent être stockées côté serveur MySQL et appelées à partir du code client.
La syntaxe des procédures stockées MySQL est similaire aux fonctions et procédures d'autres langages. Il se compose de trois mots-clés : CREATE, PROCEDURE et END. Le mot clé CREATE PROCEDURE est suivi du nom et de la liste des paramètres de la procédure stockée, puis du corps de la procédure stockée et enfin du mot clé END.
Ce qui suit est un exemple simple de procédure stockée MySQL :
CREATE PROCEDURE `get_employee`(IN id INT, OUT name VARCHAR(50), OUT age INT) BEGIN SELECT `name`, `age` INTO name, age FROM `employee` WHERE `id` = id; END
La procédure stockée ci-dessus accepte un paramètre id, interroge le nom et l'âge correspondant à l'identifiant dans la table des employés, puis les affecte aux paramètres de sortie nom et âge.
Appeler des procédures stockées MySQL en code PHP est très simple. Pour appeler une procédure stockée, vous pouvez utiliser l'instruction CALL fournie par l'extension MySQLi ou l'extension PDO. Voici un exemple de code qui utilise l'extension MySQLi pour appeler une procédure stockée MySQL :
// 配置连接参数 $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDB"; // 建立连接 $conn = new mysqli($servername, $username, $password, $dbname); // 检查连接 if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); } // 调用存储过程 $id = 1; $stmt = $conn->prepare("CALL get_employee(?, ?, ?)"); $stmt->bind_param("i", $id); $stmt->bind_result($name, $age); $stmt->execute(); $stmt->fetch(); $stmt->close(); echo "Name: ".$name.", Age: ".$age;
Le code ci-dessus se connecte à la base de données MySQL, puis appelle la procédure stockée nommée get_employee via l'instruction CALL, en passant un paramètre id. Utilisez ensuite la méthode bind_result pour lier les paramètres de sortie de la procédure stockée aux variables PHP, et enfin exécutez la procédure stockée et utilisez la méthode fetch pour obtenir les valeurs des paramètres de sortie.
La procédure stockée MySQL est une fonctionnalité très pratique, qui peut améliorer la réutilisabilité du code, renforcer la sécurité des données, augmenter les performances et réduire l'interaction avec la base de données. Il est également très simple d'appeler des procédures stockées MySQL en code PHP. Il vous suffit d'utiliser l'instruction CALL fournie par l'extension MySQLi ou l'extension PDO. Espérons que cet article vous aidera à mieux comprendre les procédures stockées MySQL et les appels de procédures stockées en PHP.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!