PHP を使用して複数の MYSQL クエリを実行する
P粉358281574
P粉358281574 2023-10-25 11:41:44
0
1
762

以下のコード スニペットに示すように、PHP を使用して連続した MYSQL ステートメントを実行しようとしています (行を別の行にコピーし、tmp テーブルを介して ID の名前を変更するだけです)。

重複した構文エラー メッセージが表示されます。数え切れないほどの繰り返しを試してきました。このコードは、私が PHP マニュアルや SO に関する他の mysql の質問で調べたコードと似ています (php ディメンションを除く)。

私の php 構文が間違っている理由を説明できる人はいますか?

リーリー

PHP メッセージの戻り値:

テーブル作成エラー: SQL 構文にエラーがあります。MariaDB サーバーのバージョンのマニュアルで「UPDATE tmp SET id=100 WHERE id = 1INSERT INTOevent_categoriesBU SELECT * FROM t at line 1」を確認してください。近くで使用する正しい構文「

P粉358281574
P粉358281574

全員に返信(1)
P粉659518294

一度に大量のクエリを実行しないでください。多くの場合、これらの操作の 1 つが成功するかどうかは、他のすべての操作が正しく実行されるかどうかに依存します。そのため、何か問題が発生した場合、何も問題がなかったかのようにそのまま続行することはできません。

###あなたはこれを行うことができます:### リーリー

例外を有効にすることを忘れないでください

そうすれば、クエリの失敗によって事態が制御不能になるのではなく、プロセスが停止します。

あなたが multi_query

を使用しない理由は、この関数がプレースホルダー値をサポートしていないためです。このクエリに何らかのユーザー データを取り込む必要がある場合は、安全に行うために

bind_param を使用する必要があります。プレースホルダー値がないと SQL インジェクション エラーにさらされ、その 1 つでアプリケーション全体が脆弱になる可能性があります。 PDO は mysqli よりも柔軟性と適応性が高いことに注意してください。そのため、mysqli

にあまり投資していない場合は、切り替えを検討する価値があります。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート