おそらくこれを行う方法はありませんが、お願いして休ませようと思いました。
ストアド プロシージャを使用してデータをテーブルに挿入しています。次に、2 番目の手順を使用して、複数の値を 2 番目の関連付けられたテーブルに挿入する必要があります。2 番目のテーブルはゼロまたは多数の値を持つことができ、最初の挿入からの last_insert_id を使用します。手順 1 から手順 2 を呼び出したいのですが、これは問題ではありませんが、値がいくつあるかわからない場合に、2 番目のテーブルに値を挿入するにはどうすればよいですか?
これはアプリケーション コードで簡単に実行できますが、必要なのはプロシージャを使用することです。値の配列 (いわば) をプロシージャ 1 に渡して、2 番目のプロシージャ挿入で使用する方法はありますか?
アプリケーション コードから返される配列は次のようになります (または空の場合もあります)。
Array(
[0] => 4
[1] => 10
[2] => 3
)
ちょうど x 個の値が常に存在することがわかっていれば、次のように簡単に実行できます。
INSERT INTO table2(col1,col2)
VALUES(v1,v2), (v3,v4), (v5,v6)
プロシージャを使用していて、挿入する値の数がわからない場合、それらの値をパッケージ化して table2 に挿入するにはどうすればよいですか? 手順 1 を経て、手順 2 に進む必要があります。これを行う方法や、それが可能かどうかさえわかりません。