首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

有关datareader有关问题

2012-02-03 
有关datareader问题strSql selectxti,sum(k01)fromorderdbfwherehyb kj0101athis.cnnOrd.Open()OleD

有关datareader问题
strSql= "select   xti,sum(k01)   from   orderdbf   where   hyb= 'kj0101a ' ";
this.cnnOrd.Open();
OleDbCommand   com=new   OleDbCommand(strSql,cnnOrd);
OleDbDataReader   sdr=null;
sdr=com.ExecuteReader(CommandBehavior.CloseConnection);   (此处出错)
我将select语句中的“sum(k01)”去掉后就没有错。是不是datareader不支持sum函数呀?

[解决办法]
sum(k01) as temp
temp 换成随便一个名称
也就是说需要有个输出列名
[解决办法]
sql问题

select xti,sum(k01) from orderdbf where hyb= 'kj0101a ' group by xti

*****************************************************************************
欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码)

最新版本:20070212

http://www.cnblogs.com/feiyun0112/archive/2006/09/20/509783.html
[解决办法]
如果是 access 数据库
好像也不支持 sum
记不清楚了 欢迎批评指正

另外 这和 reader 没关系
reader 只负责把语句提交过去查询然后取结果
并不负责解释语句
这点概念你要明确
[解决办法]
strSql= "select xti,sum(k01) from orderdbf where hyb= 'kj0101a ' ";
这条SQL语句本身就是不合法的,错误的。

[解决办法]
strSql= "select xti,sum(k01) as Cnt from orderdbf where hyb= 'kj0101a ' ";

热点排行