2 wq19920716 wq19920716 于 2014.05.04 21:51 提问

使用Access数据库时ExecuteNonQuery()与dataset中某个表中行数差别

我先使用 int rows = cmd.ExecuteNonQuery();这句话无法返回受影响行数,
而使用 以下这几句粗体话 ** OleDbDataAdapter da = new OleDbDataAdapter(cmd);
DataSet ds = new DataSet();
da.Fill(ds);
int rows = ds.Tables[0].Rows.Count;
**
可以返回行数,这个怎么解释?求大神。

public int isCheckExist(string strsel)
{

OleDbConnection conn = getcon();
conn.Open();
OleDbCommand cmd = new OleDbCommand(strsel, conn);
OleDbDataAdapter da = new OleDbDataAdapter(cmd);
DataSet ds = new DataSet();
da.Fill(ds);
int rows = ds.Tables[0].Rows.Count;

        //int rows = cmd.ExecuteNonQuery();返回受影响行数 **`strong text`** 
        conn.Close();
        return rows;           
    }
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
Winform读取Access数据库,并取数据装入DataSet
public static DataSet ReadAllData()         {             string mdbPath = System.Configuration.ConfigurationSettings.AppSettings["fileMdb"];             //string table = System.Configuration.Confi
浅谈ExecuteNonQuery方法和ExecuteScalar方法和ExecuteReader方法的使用
1)ExecuteNonQuery():执行命令对象的SQL语句,返回一个int类型变量,如果SQL语句是对数据库的记录进行操作(如记录的增加、删除和更新),那么方法将返回操作所影响的记录条数。 下面为详细的解释运用: 命令对象的ExecuteNonQuery()方法用于执行任何不从数据库返回结果集的SQL操作命令,包括INSERT INTO、UPDATE、DELETE语句、没有返回数值的存储
向Access数据库插入数据时遇见的小小问题
记得前一次用Access数据库已是多年前的事了,那时还在学校混日子。 这次,由于一个实验性的小项目,再次接触Access数据库(Access2007)。在使用Access数据库的过程中,遇见一个小小的问题,问题虽小,但是很纠结。 问题就是:我在Debug模式下,向Access数据库插入数时,数据明明插入成功了(因为界面刷新时重新获取的数据中已经包含此条数据了,且单步跟踪代码时,ExecuteN
C#中ExecuteReader()、ExecuteNonQuery()、ExecuteScalar()方法的作用
ExecuteReader() 一般是连接数据库 操作查询的 返回的是个adapter 、ExecuteNonQuery() 执行数据库 非查询类操作 、ExecuteScalar() 类型:System.Object 结果集中第一行的第一列;如果结果集为空,则为空引用(在 Visual Basic 中为 Nothing)。 返回的最大字符数为 2033 个字符。 推荐上msdn
判断dataset中是否存在某个表?
DataSet ds=new DataSet(); //给表dt起了个名字dtNameDataTable dt=new DataTable("dtName"); //将dt表添加到ds数据集中ds.Table.Add(dt); if( ds != null) {   if(ds.Tables.Contains(dt.TableName) ) {
vs2012 C# sqlserver ExecuteNonQuery()方法详解 返回值为-1
关于ExecuteNonQuery() 方法 以前对这个一直都没在意,基本上都没有用其返回值,查了一下MSDN,如下: SqlCommand.ExecuteNonQuery 方法对连接执行 Transact-SQL 语句并返回受影响的行数。备注:可以使用ExecuteNonQuery 来执行目录操作(例如查询数据库的结构或创建诸如表等的数据库对象),或通过执行 Update、Insert 或
MYSQL与.net中ExecuteNonQuery()返回值问题
使用Navicat for MYSQL,时。webservice中因为安全性问题,全部使用存储过程函数。 ExecuteNonQuery()返回值情况: 存储过程中不使用事务时,返回结果为存储过程中insert、update、delete影响的行数,但如果将这些操作放入start tarsaction 与commit中时,返回结果总是-1. 参考博客http://blog.csdn.
DataSet 取值,DataSet行数,DataSet列数 从DataSet中取出特定值
1 DataSet.Table[0].Rows[ i ][ j ]        其中i 代表第 i 行数, j 代表第 j 列数  2 DataSet.Table[0].Rows[ i ].ItemArray[ j ]        其中i 代表第 i 行数, j 代表第 j 列数  3 DataSet.Tables[0].Columns.Count        取
ado.net连接多个表
包含access数据库以及利用ado.net组件中的连接桥和dataset对多个表进行操作的源代码
VB.NET连接Office Access数据库显示列表数据
VB.NET连接Access数据库,显示数据列表     Try Dim Apppath As String = Application.StartupPath '获取启动了应用程序的可执行文件的路径,不包括可执行文件的名称 Dim DatabasePath As String = Apppath & "\MyTest.mdb;" '