PHP で複数の MySQL クエリを連続して実行するにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2024-11-09 12:52:02
オリジナル
385 人が閲覧しました

How to Execute Multiple MySQL Queries Consecutively in PHP?

PHP での連続した MySQL クエリの実行

PHP プログラミングでは、複数の MySQL クエリを連続して実行できます。ただし、一部のユーザーは、これを実行しようとしたときに構文エラーが発生しました。この記事の目的は、このような問題を解決し、複数クエリの実行に適切な方法を使用するためのガイダンスを提供することです。

複数のクエリを実行するための一般的なアプローチの 1 つは、各クエリ間の区切り文字としてセミコロン (;) を使用することです。たとえば、提供されている PHP コード スニペットでは、$sql 変数は、一時テーブルの作成、一時テーブル内の行の更新、一時テーブルからメイン テーブルへのデータの挿入という 3 つの MySQL ステートメントを連結しています。

ただし、MySQL では、個別のステートメントごとに新しいクエリ実行呼び出しが必要です。したがって、連結された $sql 変数を $conn->query($sql) で実行すると、構文エラーが発生します。

この問題を修正するには、次に示すように、各クエリを個別に準備して実行することをお勧めします。回答で提供されている改善されたコードスニペットでは:

$queries = [
  "CREATE TEMPORARY TABLE tmp SELECT * FROM event_categoriesBU WHERE id = 1",
  "UPDATE tmp SET>
ログイン後にコピー

このアプローチでは、各クエリが独自のステートメントに分割され、適切なクエリが可能になります。実行。 multi_query 関数はプレースホルダー値をサポートしていないため、アプリケーションが SQL インジェクションの脆弱性にさらされることに注意することが重要です。

柔軟性と適応性を強化するには、MySQLi の代わりに PDO (PHP データ オブジェクト) の使用を検討してください。 PDO は、プレースホルダー値のサポートや SQL インジェクションに対するセキュリティの向上など、より堅牢な機能を提供します。

以上がPHP で複数の MySQL クエリを連続して実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート