PHP PDO を使用しています。私のストアド プロシージャは 2 つの結果セットを返します。結果セットに名前を付けることはできますか? 次のような 2 つのテーブルに対する SELECT ステートメントの場合、
SELECT * FROM A
と
SELECT * FROM B
それらを特定することは可能ですか?
PHP PDO を使用しています。私のストアド プロシージャは 2 つの結果セットを返します。結果セットに名前を付けることはできますか? 次のような 2 つのテーブルに対する SELECT ステートメントの場合、
SELECT * FROM A
と
SELECT * FROM B
それらを特定することは可能ですか?
いいえ、結果セットに名前を付けることはできませんが、結果セットに名前を付ける必要がある理由はすぐには思いつきません...ストアドプロシージャによって返される結果セットの数と内容は完全に任意であるためです- - 実際、テーブルから取得する必要はまったくありません ( SELECT NOW() AS server_time;
) アプリケーションは、事前に、サーバーが返す結果の性質とその順序を理解する必要があります。
それらは、サーバーからの応答の序数の位置によって「識別」できます...SELECT
実行される最初の無制限は、最初の結果セットとして表示されるものを生成し、2番目に実行されるものは2番目を生成します...常に.
SELECT
ストアド プロシージャは、1 つのスレッド内で命令を順次実行するため、各クエリにどれだけ時間がかかっても、プログラム フローでステートメントが検出 された順序以外の順序で結果セットが生成される可能性はありません。
「いいえ」という答えで未解決の問題が残る場合は、質問を拡大して、私たちが解決しようとしていることを説明することを検討してください。