0

次の例ではトランザクションが役立つと思いますが、間違っている可能性があります。私が回避しようとしているのは、次のシーンにない場合、データベースに対して 3 つの異なる呼び出しを行うことです..

私は次のことをしたい:

  1. 従業員から名前、住所を選択
  2. 状態から状態を選択
  3. errorTable からエラーを選択

この場合、データを取得するためにいくつかの異なる選択を呼び出す必要があります。データベースへの複数の呼び出しを最小限に抑えて、読み取りたいすべてのデータを返すためにこのシナリオにアプローチする最良の方法は何ですか?

注: テーブル間に関係があるテーブルはありません。

4

7 に答える 7

0

SQL サーバーから複数のセットを返せない理由はありません。

select name, address from employee;
select state from states;
select error from errorTable;

SQL リーダーを使用して .NextResult を取得すると、次のデータセットに移動します。

http://csharp.net-informations.com/data-providers/csharp-multiple-resultsets.htm

于 2013-07-23T21:43:56.937 に答える
0

ストアド プロシージャの使用を検討することをお勧めします。

于 2013-07-23T19:30:10.817 に答える
0

それらの間に関係がある場合は、JOINテーブルで選択クエリを試すことができます

于 2013-07-23T19:32:57.987 に答える
0

ASP.Net 4.0 を使用していると思います...

次のようにして、クエリを「チェーン」できます。

select name, address from employee;select state from states;select error from errorTable;

次に、次のようにDataSetを埋めます。

string sql = "...";
SqlCommand comm = new SqlCommand(sql, con);
SqlDataAdapter adpr = new SqlDataAdapter(comm);
DataSet ds = new DataSet();
adpr.Fill(ds);
于 2013-07-23T19:33:17.673 に答える