它们是两不同的功能的东西,DataSet更像是一个内存中的数据库
而DataCommand则是执行Sql语句的一个工具,
所以不存在用那个,
而且你在用DataSet 的时候,其实必须用到DataCommand即使不是明显调用

解决方案 »

  1.   

    就是可以不用DataSet一样可以完成数据操作?
      

  2.   

    看具体情况了,一般如果不要返回数据时,比如更新或者存储过程等,就可以用DataCommand
      

  3.   

    我不同意楼上的意见。C#中有两种连接方式:
    1,connected: Data Source->XxxConnection->XxxCommand->XxxDataReader
    2,Disconnected:DataSource->XxxConnection->XxxDataAdapter->XxxDataSet
    从上面的对比可以看出二者的区别,dataset是将数据映射到内存中,当数据产送完毕后,会切断连接,这样,数据服务器的负载就要轻一些。
    但是,采用connected方式,由于server和client始终连接,所以,server会花费更多的资源用于维护连接。