• 主页
  • ASP
  • .NET Framework
  • Web Services
  • VB
  • VC
  • 图表区
  • 分析与设计
  • 组件/控件开发
  • LINQ

送分讨论:算是BUG吗?

7707 2006-09-12 08:15:55
新建一OleDbConnection,执行一次或数次ExecuteScalar,之后再使用ExecuteReader将只能得到一行一列数据
...全文
309 点赞 收藏 22
写回复
22 条回复
anheizhizi 2006年09月12日
大家都没明白,LZ是直接来送分的 ^^
回复 点赞
jason_cl 2006年09月12日
请楼主去查看dr.read()的返回
或者想想
while(dr.read())
{
}
回复 点赞
7707 2006年09月12日
nickppa(张) ( ) 信誉:100 Blog
----
注意:我说的是一行一列

Select pwd,email From T_Users Where ID=@ID
应该返回两列吧

短短一句话,这么多人看不懂

----
iuhxq(小灰) ( ) 信誉:100 Blog
--跟踪过,语句正常


另外说明:这是在.net 2.0中遇到的,1.1没测试
回复 点赞
iuhxq 2006年09月12日
在OleDbDataReader dr = cmd.ExecuteReader();断点,然后查看cmd的CommandText的值?
回复 点赞
nickppa 2006年09月12日
Select pwd,email From T_Users Where ID=@ID
ms只返回一条数据,SQL你执行下能返回多条吗?
回复 点赞
heyidan 2006年09月12日
對啊!就是這樣的呀!
回复 点赞
jerryfos 2006年09月12日
string uName = cmd.ExecuteScalar().ToString();之后加一句
string temp = cmd.ExecuteNonQuery().ToString();试试
回复 点赞
sunjiancn 2006年09月12日
呵呵 是嘛 也试一下 昨天才接触OleDbConnection
回复 点赞
7707 2006年09月12日
BS坏坏就这么一句话也不看清楚,我是说再使用DataReader...
回复 点赞
7707 2006年09月12日
以前没这么写过代码,一般一个连接只执行一个DataReader,想省事试了一下,才发现这个

Access库

using(OleDbConnection conn = new OleDbConnection("c:\\db.mdb"))
{
OleDbCommand cmd = new OleDbCommand("Select uName From T_Users Where ID=@ID", conn);
cmd.Parameters.Add("@ID", OleDbType.Integer).Value = 1;
string uName = cmd.ExecuteScalar().ToString();

cmd.CommandText = "Select pwd,email From T_Users Where ID=@ID";
OleDbDataReader dr = cmd.ExecuteReader();
if (dr.Read())
{
dr[0].ToString();//这个可以取出
dr[1].ToString();//这里超出索引...
}
dr.Close();
conn.Close();
}
回复 点赞
jiechifeiniao 2006年09月12日
代码
回复 点赞
绝代坏坏 2006年09月12日
大哥executeScalar返回的本来就是首行首列内容呀。
回复 点赞
dsclub 2006年09月12日
代码怎么写的?这么有意思?
回复 点赞
enderjiang 2006年09月12日
jf
回复 点赞
shingkong 2006年09月12日
莫名
回复 点赞
zeng_c_h 2006年09月12日
應該是樓主大哥犯了低級錯誤吧,說不定就一行符合條件的數據哈
回复 点赞
myminimouse 2006年09月12日
mark
回复 点赞
nyf1220 2006年09月12日
Select pwd,email From T_Users Where ID=@ID 是不是就一行啊,大哥!!
你换 Select pwd,email From T_Users 试下。
回复 点赞
zeng_c_h 2006年09月12日
應該說是不可能的,哪有這樣的道理嘛,微軟的工程師有這么讓人失望的嗎?
回复 点赞
whu531 2006年09月12日
存储过程的问题
建议去看一下ADO.NET的红皮书!
回复 点赞
发动态
发帖子
.NET技术社区
创建于2007-09-28

4.9w+

社区成员

66.8w+

社区内容

.NET技术交流专区
社区公告
暂无公告