1

現在、データベースとの通信に SQL クエリ (選択、プロシージャ、関数) を使用しています。

今までデータセットを使用していません。データセットの概念を本当に理解できません。データベースからの選択、挿入、更新、または削除にも使用できることを知っています。

しかし、SQL コマンドを使用して同じタスクを実行できるのに、なぜデータセットが必要になるのでしょうか。

データセットはセキュリティの面で優れていますか? それとも速いですか?

アップデート:

だから私はこのフォーラムを読みまし

反対側の DataSet はデザイナーから作成できます。デザイナを使用すると、テーブル、リレーション、制約などを作成できます。サーバー エクスプローラからドラッグ アンド ドロップすることも、別の利点かもしれません。DataAdpater を使用すると、クエリで型指定された DataSet を作成できます。アプリケーションでインポート/エクスポートが必要な場合は、カスタム エンティティを使用するときに、この機能を独自に作成する必要があります。DataSet を使用すると、これは問題ではなく、データを XML にインポート/エクスポートできます。また、DataGridView または他の同様のコントロールにバインドすることもできます。DataSet は 1 レベルの履歴もサポートしているため、各行の以前のバージョンに戻すことができます。

非常に役に立ちますが、データベースを処理するためにデータセットまたはクエリを使用する必要があるかどうか、まだ疑問が残ります。レコードの編集、更​​新、削除など。

私は次のようなクエリを使用します。

    SqlCommand cmdCheck = default(SqlCommand);
    string strQry ="Update, Delete, Insert queries";

    cmdCheck = new SqlCommand(strQry, Connection);
    openConnection();
    cmdCheck.ExecuteCommand();
    CloseConnection();

および DataAdapter 選択クエリ用。

4

3 に答える 3

1

今まで良い答えはありません。:(

したがって、データセットよりもクエリを使用する方が良いと思います。理由 - データセットは、大規模なデータの管理が難しい場合があります。データ転送が遅くなる可能性があると思います。- Sql クエリは短く、簡単に記述できます。- 今までデータセットを使用したことがないため、SQL クエリについてよく知っています。

私が間違っている場合は、合理的な回答で返信してください。

于 2013-01-13T06:53:28.513 に答える
1

次のリンクを読むと、それが解消されるはずです。

http://social.msdn.microsoft.com/Forums/en/adodotnetdataset/thread/100cce91-cf9c-46c9-986a-98a409a196f2

アイデアは、データベースと対話することだけではありません。データセットには、データベースから戻った後に何かをするのに役立つ機能があります。厳密に型指定されたセットがあると役立ちます。たとえば、ユーザー インターフェイスのコントロールにバインドできます。

于 2013-01-10T06:07:10.330 に答える