Maison  >  Article  >  base de données  >  MySQLi peut-il préparer plusieurs requêtes en une seule instruction ?

MySQLi peut-il préparer plusieurs requêtes en une seule instruction ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-10-28 17:44:02288parcourir

Can MySQLi Prepare Multiple Queries in One Statement?

MySQLi peut-il préparer plusieurs requêtes dans une seule instruction ?

Dans MySQLi, il existe des limites à la préparation de plusieurs requêtes dans une seule instruction. Une instruction préparée ne peut exécuter qu'une seule requête MySQL. Cependant, vous pouvez préparer autant d'instructions que nécessaire, en les stockant dans différentes variables. Voici un exemple :

<code class="php">$stmtUser = $sql->prepare("INSERT INTO user (id_user, username, pw, email) VALUES (?,?,?,?)");
$stmtProc = $sql->prepare("INSERT INTO process (id_user, idp) VALUES (?,?);");</code>

Plus tard, vous pourrez exécuter ces instructions indépendamment :

<code class="php">$stmtUser->execute();
$stmtProc->execute();</code>

Si vous exigez que les deux instructions soient exécutées avec succès ou pas du tout, envisagez d'utiliser des transactions.

Gestion des erreurs :

Si vous rencontrez l'erreur « Appel à une fonction membre bind_param() sur un non-objet », cela indique que l'appel prepare() a échoué , ce qui entraîne un objet d'instruction préparée non valide. Dans de tels cas, il est essentiel d'inspecter l'instruction prepare() pour détecter les erreurs potentielles.

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