問題タブ [multiple-resultsets]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
18522 参照

linq-to-sql - 複数の結果を持つ Linq to SQL ストアド プロシージャ

以下のアプローチに従って、LINQ To SQL を使用して複数の結果からデータを取得しました。

DataContext から継承するクラスの呼び出しメソッドは次のようになります。

このメソッドは、ストアド プロシージャ名にマップされる Function 属性だけでなく、ストアド プロシージャが返す結果セットの型を持つ ReturnType 属性でも修飾されていることに注意してください。さらに、メソッドは IMultipleResults の型指定されていないインターフェイスを返します。

そのため、プログラムはこのインターフェイスを使用して結果を取得できます。

上記のストアド プロシージャでは、2 つの選択クエリがありました。 1. 結合なしの選択クエリ 2. 結合ありの選択クエリ

ただし、上記の 2 番目の選択クエリでは、表示されるデータはテーブルの 1 つ、つまり Categories テーブルからのものです。しかし、結合を使用して、両方のテーブル、つまりカテゴリと PostCategories からの結果を含むデータ テーブルを表示したいと考えています。

  1. LINQ to SQL を使用してこれを達成する方法を教えてください。
  2. 単純な SQL で上記のアプローチを実装するのに対して、上記のアプローチを使用した場合のパフォーマンスのトレードオフは何ですか?
0 投票する
3 に答える
2354 参照

c# - 複数のレコードセットを返すストアド プロシージャ

私はC#にかなり慣れていません。複数のレコードセットを必要とするページと、それらを返す 1 つの sproc があります。メイン レコードセットにリピーター コントロールを使用しています。次の返されたレコードセットにアクセスするにはどうすればよいですか?


データソースは aspx ページにあります。NextResult を使用するには、コード ビハインド ページに移動する必要がありましたか? ここに私のコードがあります。データソースを分離コードに移動し、データリーダーを実装して nextresult を使用するにはどうすればよいですか?

0 投票する
1 に答える
713 参照

c# - Visual Studio 2008 で複数の結果を持つ LINQ to SQL ストアド プロシージャ

Visual Studio 2008 を使用しており、2 つの異なる結果セットを選択するストアド プロシージャを作成しました。ストアド プロシージャを linq to sql dbml datacontext クラスにドラッグすると、Visual Studio によって cs ファイルに次のコードが作成されます。

デザイナーは、IMultipleResults を使用するコードを生成するべきではありませんか? または、コードを渡す必要がありますか?

0 投票する
5 に答える
237 参照

sql-server - 複数の関連する行を含む行を取得するための推奨される方法

現在、SqlDataReader とストアド プロシージャを使用して C# で DAL を手書きしています。パフォーマンスは重要ですが、それでも維持できるはずです...

テーブルレシピがあるとしましょう

(recipeID, author, timeNeeded, yummyFactor, ...)

そして食卓の食材

(recipeID, name, amount, yummyContributionFactor, ...)

ここで、200 ほどのレシピとその材料をクエリしたいと思います。次の可能性が見えます。

  • すべてのレシピをクエリしてから、各レシピの材料をクエリします。
    もちろん、これは maaany クエリになります。
  • 結合された大きなリストですべてのレシピその材料を照会します。これにより、すべてのレシピ データが複数回送信されるため、多くの無駄なトラフィックが発生します。
  • すべてのレシピをクエリしてから、レシピ ID のリストをデータベースに戻して、すべての材料を一度にクエリします。または、両方のクエリを一度に発行して、複数の結果セットを返します。DAL に戻り、recipeID によって材料をレシピに関連付けます。
  • エキゾチックな方法: すべてのレシピをカーソルで移動し、各レシピについて、レシピと材料の 2 つの個別の結果セットを返します。結果セットに制限はありますか?

多様性を高めるために、DAL からの ID のリストまたはパラメータ化された SQL 条件によってレシピを選択できます。

パフォーマンスと混乱の比率が最も高いのはどれだと思いますか?

0 投票する
2 に答える
1975 参照

sql-server - SQLストアドプロシージャのクリア結果セット

ストアドプロシージャがすでに収集している複数の結果セットをクリアして、作成される次の結果セットがプロシージャによって返される最初の結果セットになるようにすることはできますか?

0 投票する
1 に答える
366 参照

mysql - Execute を使用して SP から MySQL の複数結果を回避する

私はSPのようなものを持っています

;p>

そしてそれは複数の結果をもたらします。不便なことに加えて、Soul の数十万のレコードのそれぞれについて、このすべてのマルチ結果 (実際にはまったく必要ありません)、約 5 (制限のパラメーター) を取得すると、すべてがかかるのではないかと心配しています。私の記憶(そしてすべて無駄に)。また、空の文字列から準備すると、まだ複数の結果があることに気付きました...少なくとも、実行ステートメントでそれらを取り除く方法は? そして、可能なステートメントについて、SPからの出力を回避するためのレシピが必要です(マルチを生成できる場合は、内部に多くの「更新...」と「選択...」があります) . Tnx ヘルプ...

0 投票する
2 に答える
5332 参照

php - PHPは、クラス内からオブジェクトの配列として自己を返しますか?

私は CodeIgniter を使用して php Web アプリケーションを構築しています。また、適切な OO プラクティスを使用しようとしていますが、これには多くの流派があるようです。特に、MySQL テーブルとやり取りするためのクラス biography_model があります。このデータ モデルには、テーブル内の列を表すいくつかのクラス プロパティがありますが、 などのテーブルにないプロパティもいくつかあります$image_url。クラス コンストラクター関数は、オプションのレコード ID パラメーターを受け取り、テーブルからそのレコードをフェッチし、get_biography()メソッドを呼び出して、テーブルにないプロパティを含むすべてのオブジェクト プロパティを設定し$image_urlます。このようにして、コントローラーで新しい biography_model オブジェクトをインスタンス化し、すべての有用なプロパティをすぐに使用できるようにすることができます。$bio = new biography_model($id);

しかし、テーブルからレコードの複数行の結果セットを返す場合の最善のアプローチは何でしょうか? レコードごとに、 も設定する必要があり$image_urlます。テーブル内のレコードのリストをクエリし、各 ID を新しい biography_model($id) オブジェクトに渡すことで、コントローラーでこれを行うことができます。しかし、コントローラーがモデルをバイパスしてデータベースに直接クエリを実行している状況が発生します。

代わりに、biography_model 内から biography_model オブジェクトの配列を返すことにしました。

例:

できます。しかし、それは合理的なアプローチですか?他にもっと受け入れられている方法はありますか?データベースに 2 回クエリを実行していることはよくわかっていますが、これを処理するより良い方法がわかりませんでした。すべての提案を歓迎します!

ありがとう、ウルフ

0 投票する
2 に答える
4186 参照

c# - 1つのストアドプロシージャから多くのGridViewコントロールを設定するにはどうすればよいですか?

7つの結果セットを返すSQLServerのストアドプロシージャがあります。このストアドプロシージャをASP.NETから呼び出し、ASP.NETページの7つのGridViewに結果を入力したいと思います。SqlDataReaderを使用してデータを取得していますが、GridViewを埋めるためのC#コードで苦労しています。

データを取得するためのDALクラスを作成し、そこに次のメソッドがあります。

ヘルパーメソッドMultipleResultsは次のようになります。

ページ上のコンポーネントを次のようなもので呼び出そうとしています。

この例をウェブで検索しましたが、何も見つかりませんでした。

リソースを知っていますか、または共有する小さな例がありますか?

ありがとう。

0 投票する
1 に答える
1811 参照

linq-to-sql - ASP.NET MVC 2: ストアド プロシージャの呼び出し、複数の ResultSet の取得

2 番目、3 番目、4 番目の結果セットにアクセスするにはどうすればよいですか?

コントローラ:

意見:

これは非常に簡単です...しかし、最初のresulsetにしかアクセスできません。ヘルプ!

0 投票する
1 に答える
285 参照

tsql - 再コンパイル時のストアドプロシージャの構文エラーがキャッチによってトラップされ、空の結果セットが返される

問題を特定しようとしています(stackoverflow.com/q/483787/537284のトピックに似ています)。この問題はストアドプロシージャに関係しており、週に1回「ランダムに」発生します。問題を再現するために、さまざまな手順バージョンを作成して、考えられる良い結果と悪い結果を模倣しました。

  • 優れた複数行の単一結果セット。
  • 情報メッセージを含む優れた複数行の単一結果セット。
  • Raiserror(レベル11未満)を使用した優れた複数行の単一結果セット。
  • Printを使用した優れた複数行の単一結果セット。
  • 良い空の単一の結果セット。
  • 不正な構文エラー。
  • try/catchでの不正な構文エラー。
  • Raiserror(レベル11)の不良エラー。
  • Raiserror(レベル11)およびtry/catchでの不良エラー。

これらのテスト間で、try / catchバージョンの構文エラーは、私が期待するものとは異なる動作をしました。2つの結果セット(1つは空でもう1つはcatch命令から)が返されます。

構文エラーは部分的に実行されますか?試行ではなく、キャッチブロックの結果を期待していました。これをRaiserrorと比較し、重大度11を使用すると、1つの結果セットのみが返されるcatchブロックがトリガーされます。構文エラーとRaiserrorの違いは何ですか?

これが私のテスト手順です:

これが私のテストテーブルです(他の人からリッピングされました):