複数の SQL コマンドを一度に実行するには、mysqli オブジェクトの multi_query() メソッドを使用します。
具体的な方法:
同じ文字列に複数の SQL コマンドを記述し、それらをパラメータとして multi_query() メソッドに渡します。複数の SQL コマンドを区切るにはセミコロン (;) を使用します。最初のコマンドの実行でエラーがなかった場合、このメソッドは TRUE を返し、それ以外の場合は FALSE を返します。
multi_query() メソッドは 1 つ以上のクエリを実行するために接続でき、各 SQL コマンドは結果を返す可能性があるため、必要に応じて各結果セットを取得する必要があります。したがって、このメソッドによって返される結果の処理にはいくつかの変更があります。最初のクエリ コマンドの結果は、mysqli オブジェクトの use_result() メソッドまたは store_result() メソッドを使用して読み取る必要があります。もちろん、すべての結果が返されます。クライアントで store_result() メソッドをすぐに使用する場合は、このアプローチの方が効率的です。さらに、mysqli オブジェクトの more_results() メソッドを使用して、他の結果セットがあるかどうかを確認できます。
次の結果セットを処理したい場合は、mysqli オブジェクトの next_results() メソッドを呼び出して次の結果セットを取得する必要があります。このメソッドは TRUE または FALSE を返します。
次の結果セットがある場合は、 use_result() または store_result() メソッドを使用してそれを読み取る必要もあります。