ホームページ >データベース >mysql チュートリアル >MySQLi は 1 つのステートメントで複数のクエリを準備できますか?
MySQLi は 1 つのステートメントで複数のクエリを準備できますか?
MySQLi では、1 つのステートメントで複数のクエリを準備することに制限があります。準備されたステートメントは 1 つの MySQL クエリのみを実行できます。ただし、必要なだけステートメントを準備し、それらを別の変数に保存できます。以下に例を示します。
<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>
後で、これらのステートメントを個別に実行できます。
<code class="php">$stmtUser->execute(); $stmtProc->execute();</code>
両方のステートメントを正常に実行する必要がある場合、またはまったく実行しない必要がある場合は、トランザクションの使用を検討してください。
エラー処理:
「非オブジェクトのメンバー関数 binding_param() を呼び出します」というエラーが発生した場合は、prepare() 呼び出しが失敗したことを示します。 、無効な準備済みステートメント オブジェクトが生成されます。このような場合、prepare() ステートメントに潜在的なエラーがないか検査することが重要です。
以上がMySQLi は 1 つのステートメントで複数のクエリを準備できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。