| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1391 人关注过本帖
标题:[求助]ADO请教 ExecuteNonQuery返回问题
只看楼主 加入收藏
slcfhr
Rank: 1
等 级:新手上路
帖 子:125
专家分:0
注 册:2006-6-16
收藏
 问题点数:0 回复次数:12 
[求助]ADO请教 ExecuteNonQuery返回问题
SqlConnection con = new SqlConnection("server=.;database=CarManagement;uid=sa;pwd=;");
con.Open();
SqlCommand cmd = new SqlCommand("select * from CM_Main", con);
int d = cmd.ExecuteNonQuery();


为什么cmd.ExecuteNonquery();返回的值是-1,我的库里有大量的数据,我换了几个表也不行,

郁闷中。。。。。等待原因

[此贴子已经被作者于2006-6-18 13:57:43编辑过]

搜索更多相关主题的帖子: ADO 
2006-06-18 13:39
slcfhr
Rank: 1
等 级:新手上路
帖 子:125
专家分:0
注 册:2006-6-16
收藏
得分:0 

我把command语句换成了select count(*) from CM_Main仍然不行,,

我的问题出在哪儿了


有肚量去容忍那些无法改变的事情 有勇气去改变那些可以改变的事情 有智慧去区别上述二类事
2006-06-18 14:03
月夜枫华
Rank: 4
等 级:贵宾
威 望:12
帖 子:437
专家分:42
注 册:2006-1-2
收藏
得分:0 
ExecuteNonQuery();
是给插入,删除,更新这3个命令所使用的,返回值是插入或者删除更新的行数.
如果想要知道查询的行数要使用ExecuteReader()函数,返回值为SqlDataReader()类的实例

2006-06-18 18:28
slcfhr
Rank: 1
等 级:新手上路
帖 子:125
专家分:0
注 册:2006-6-16
收藏
得分:0 
收到,,,,谢谢,问题解决了

有肚量去容忍那些无法改变的事情 有勇气去改变那些可以改变的事情 有智慧去区别上述二类事
2006-06-19 10:50
蓝色sky
Rank: 1
等 级:新手上路
帖 子:79
专家分:0
注 册:2006-6-3
收藏
得分:0 
我也遇到了这个问题,想不到是这个原因.
谢谢了.


我是一个普通人 但,我比普通人更加努力!
2006-06-19 11:39
蓝色sky
Rank: 1
等 级:新手上路
帖 子:79
专家分:0
注 册:2006-6-3
收藏
得分:0 
楼主
你改后的程序是什么?
可以让我看一下么?

我是一个普通人 但,我比普通人更加努力!
2006-06-21 09:06
蓝色sky
Rank: 1
等 级:新手上路
帖 子:79
专家分:0
注 册:2006-6-3
收藏
得分:0 
我改为ExecuteReader()
返回行里为System.Data.SqlClient.SqlDataReader

返回值为SqlDataReader()类的实例 这句话说的是改那里 ?

我是一个普通人 但,我比普通人更加努力!
2006-06-21 09:33
月夜枫华
Rank: 4
等 级:贵宾
威 望:12
帖 子:437
专家分:42
注 册:2006-1-2
收藏
得分:0 
SqlDataReader sdr=sqlcom.ExecuteReader();
如何读取数据请查找SqlDataReader的用法

2006-06-21 12:20
slcfhr
Rank: 1
等 级:新手上路
帖 子:125
专家分:0
注 册:2006-6-16
收藏
得分:0 

SqlConnection con = DB.DBAZCC();
con.Open();
SqlCommand cmd = new SqlCommand("select * from Bumen where DId=" + DID(), con);
SqlDataReader sdr = cmd.ExecuteReader();
int i = 0;
while (sdr.Read())
{
i++;
}
string[] m = new string[i];
sdr.Close();
SqlDataReader sdr1 = cmd.ExecuteReader();
for (int j=0; j < m.Length; j++)
{
sdr1.Read();

m[j] = sdr1.GetString(1).ToString();
}
con.Close();
return m;




呵呵,,,方法笨了点,i的最后值 就是检索了多少行数据,m 是我要的每一行中的一个字段的数据,用dataset也可以不想改了.谁还有好的方法拿来共享一下


有肚量去容忍那些无法改变的事情 有勇气去改变那些可以改变的事情 有智慧去区别上述二类事
2006-06-21 16:07
月夜枫华
Rank: 4
等 级:贵宾
威 望:12
帖 子:437
专家分:42
注 册:2006-1-2
收藏
得分:0 
当数据量大的时候效率很差,不推荐使用
起码也得把第一个检查函数的SQL语句改为Select Count(*)啊,用DataReader来循环读太慢了

2006-06-21 18:04
快速回复:[求助]ADO请教 ExecuteNonQuery返回问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.021802 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved