数据集与Sql查询(选择,过程,函数)哪个更好用?

时间:2013-01-10 05:58:58

标签: sql .net sql-server dataset

我目前使用SQL查询(选择,程序,函数)与数据库进行通信。

直到现在我还没有使用过数据集。我真的无法得到数据集的概念。我只知道它们也可用于从数据库中选择,插入,更新或删除。

但是,当我们可以使用SQL命令执行相同的任务时,为什么甚至需要一个数据集。

数据集的安全性是否更好?还是更快?

更新

所以我读了这个论坛ashutosh给了 http://social.msdn.microsoft.com/Forums/en/adodotnetdataset/thread/100cce91-cf9c-46c9-986a-98a409a196f2

  

另一侧的DataSet可以从设计师创建。 Designer允许您创建表,关系,约束,...从Server Explorer拖放可能是另一个好处。使用DataAdpater,您可以在查询时创建类型化的DataSet。如果您的应用程序需要导入/导出,则在使用自定义实体时,您必须自己编写此功能。使用DataSet这不是问题,允许您将数据导入/导出到XML。它也可以绑定到DataGridView或任何其他类似的控件。 DataSet还支持一个级别的历史记录,允许您恢复到每行的先前版本。

非常有用,但仍然存在问题,我是否应该使用数据集或查询来处理数据库。比如编辑记录,更新,删除等。

我使用我的查询:

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

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

和DataAdapter用于选择查询。

3 个答案:

答案 0 :(得分:2)

SQL查询比DataSet更好,更细化。数据集是表接口的简化,通常会导致设计不良的表中的数据过多。关系数据库和标准查询语言的进一步抽象是Hibernate和Microsoft的Entity Framework等ORM的概念。

是的,它们使编码变得简单,但是像所有其他事情一样,它们剥夺了数据库设计和规范化的精细方法以及良好的编码实践和技能。

答案 1 :(得分:1)

阅读以下链接应该清除它。

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

这个想法不只是与数据库交谈。数据集具有帮助您从数据库回来后执行操作的功能。具有强类型集合有助于,例如您将能够绑定到用户界面中的控件。

答案 2 :(得分:1)

直到现在还没有任何好的答案。 :(

所以我认为使用查询比使用数据集更好。 因为 - 对于大型数据,数据集可能难以管理。我认为它们可能导致数据传输速度缓慢。 - Sql查询简短易写。 - 我更了解sql查询,因为到目前为止我还没有使用过数据集。

如果我错了,请回答合理的答案。