Maison > base de données > tutoriel mysql > Puis-je préparer plusieurs requêtes dans une seule instruction MySQLi ?

Puis-je préparer plusieurs requêtes dans une seule instruction MySQLi ?

Linda Hamilton
Libérer: 2024-11-02 08:55:29
original
997 Les gens l'ont consulté

Can I Prepare Multiple Queries in a Single MySQLi Statement?

Préparation de plusieurs requêtes dans une seule instruction MySQLi

Il n'est pas possible de préparer plusieurs requêtes dans une seule instruction MySQLi. Chaque appel à mysqli_prepare() ne peut préparer qu'une seule requête.

Approche alternative pour exécuter plusieurs requêtes

Si vous devez exécuter plusieurs requêtes en une seule fois, vous pouvez créer et exécutez des instructions mysqli_prepare() distinctes pour chaque requête.

<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 (?,?);");

$stmtUser->bind_param("ssss", $id, $username, $pw, $email);
$stmtProc->bind_param("ss", $id, $idp);

$stmtUser->execute();
$stmtProc->execute();

$stmtUser->close();
$stmtProc->close();</code>
Copier après la connexion

Gestion des erreurs

L'erreur "Appel à une fonction membre sur un non-objet" est généralement rencontré lorsque prepare() échoue. Cela est généralement dû à une erreur dans l'instruction préparée elle-même, et non dans le code suivant.

Support des transactions

Si vous souhaitez vous assurer que plusieurs requêtes sont exécutées ensemble ou pas du tout, MySQLi prend en charge les transactions. Vous pouvez utiliser les fonctions mysqli_begin_transaction() et mysqli_commit() pour contrôler les limites des transactions.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal