など、実行する必要がある mysql ステートメントが複数ある場合
$sqls= "テーブル a 値を挿入(1,2);"
実行する必要がある場合、PHP で使用できるメソッドが 3 つあります:
mysql_query
プド
mysqli
3つの方法はいずれもSQL文に問題がない場合に利用可能です。
でも
SQL ステートメントが間違っていると問題が発生します
最初の SQL エラー: 3 つのメソッドすべてが false を返します
最初の SQL は正しいですが、2 番目の SQL は間違っています。mysql_query、pdo、mysqli:query も true を返します。したがって、現時点では、SQL にそのステートメントにエラーがあるかどうかを判断することはできません。
この問題を解決するにはいくつかの方法があります:
1 SQL文を解析する
各SQLを分割して実行します。これにより、各ステートメントを個別に実行する問題が解決されます。ただし、この方法にはさらにいくつかの方法があるため、お勧めできません。
2 SQL ステートメントをテキストとして保存します。
cmd を使用してコマンド mysql… を実行し、出力をキャプチャします。これも方法ですが、問題を回避しているように感じます。もっと良い方法があるはずです。
3 mysqli::multi_query メソッドを使用します
このメソッドは複数の SQL ステートメントを実行し、mysqli::next_result を使用して SQL のオフセットを設定し、mysqli::error を使用して現在のオフセット SQL のエラーステータスを取得できます
以下は3番目のメソッドのサンプルコードです
コードは次のとおりです:
www.bkjia.com
本当
http://www.bkjia.com/PHPjc/326878.html