Maison  >  Article  >  base de données  >  Exemple pour expliquer comment utiliser les procédures stockées MySQL en PHP

Exemple pour expliquer comment utiliser les procédures stockées MySQL en PHP

PHPz
PHPzoriginal
2023-04-17 15:26:01721parcourir

Introduction aux procédures stockées MySQL et exemples utilisés en PHP

Les procédures stockées MySQL sont une fonctionnalité puissante de la base de données MySQL. Il peut s'exécuter indépendamment de l'application, exécuter une série d'instructions SQL et renvoyer des résultats, simplifiant ainsi le développement d'applications ; il peut également réduire efficacement la pression sur le serveur et améliorer les performances de la base de données. Cet article expliquera les connaissances de base liées aux procédures stockées MySQL et fournira un exemple de code pour utiliser les procédures stockées MySQL en PHP.

1. Connaissance de base des procédures stockées MySQL

Les procédures stockées MySQL sont un ensemble d'instructions SQL précompilées utilisées pour effectuer des tâches fonctionnelles spécifiques. Contrairement aux fonctions, les procédures stockées peuvent accepter des paramètres d'entrée et des valeurs de retour, et peuvent être partagées entre différents clients.

La syntaxe de la procédure stockée MySQL est la suivante :

CREATE [OR REPLACE] PROCEDURE procedure_name ([IN | OUT | INOUT] parameter_name datatype [, ...])
BEGIN
    -- 执行内容
END;

où CREATE PROCEDURE représente la création d'une procédure stockée ; OR REPLACE est facultatif, indiquant que si une procédure stockée du même nom existe déjà, remplacez la procédure stockée d'origine que représente nom_procédure ; le nom de la procédure stockée ; nom_paramètre représente Le nom du paramètre d'entrée/sortie de la procédure stockée indique le type de données du paramètre ;

L'exemple suivant montre comment écrire une procédure stockée MySQL simple :

CREATE PROCEDURE my_procedure(IN name VARCHAR(50))
BEGIN
    SELECT * FROM users WHERE name = name;
END;

2. Utiliser des procédures stockées MySQL en PHP

Il est très pratique d'utiliser des procédures stockées MySQL en PHP. PHP fournit deux interfaces : mysqli et PDO. appelez la procédure stockée MySQL. Ici, nous prenons mysqli comme exemple pour présenter et fournir un exemple de code pour référence.

Tout d'abord, nous devons nous connecter à la base de données MySQL, comme suit :

$mysqli = new mysqli("localhost", "root", "", "test");
if ($mysqli->connect_error) {
    die("连接失败: " . $mysqli->connect_error);
}

Ensuite, nous devons appeler la procédure stockée et transmettre les paramètres. Mysqli fournit deux méthodes, à savoir bind_param et call_user_func_array, nous prenons ici bind_param comme exemple pour illustrer.

// 准备参数
$name = "Tom";

// 准备调用存储过程的语句
$stmt = $mysqli->prepare("CALL my_procedure(?)");
$stmt->bind_param("s", $name); // 绑定参数

// 执行存储过程
$stmt->execute();

// 处理返回结果
$result = $stmt->get_result();
while ($row = $result->fetch_assoc()) {
    echo $row['id'] . " " . $row['name'] . " " . $row['age'] . "<br/>";
}

// 释放资源
$stmt->close();
$mysqli->close();

Dans le code ci-dessus, nous avons appelé la procédure stockée my_procedure et passé un paramètre de type chaîne. Le premier paramètre de bind_param est le type de paramètre. Ici, nous utilisons s pour représenter le type de chaîne. Pour plus de détails, veuillez vous référer à la documentation officielle de PHP. Après avoir exécuté la procédure stockée, nous obtenons le jeu de résultats renvoyé via get_result, puis générons chaque ligne de données tour à tour.

Résumé

Cet article présente les bases des procédures stockées MySQL, ainsi qu'un exemple de code pour utiliser les procédures stockées MySQL en PHP. L'utilisation de procédures stockées nous permet de traiter les instructions SQL plus efficacement, d'améliorer les performances de la base de données et de faciliter également l'interaction avec les applications. Dans le développement réel, nous pouvons choisir d'utiliser des procédures stockées ou d'autres méthodes pour faire fonctionner la base de données selon des scénarios spécifiques.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn