c#访问Oracle,查询符合条件的记录数如何返回?

mrnian2008 2009-06-22 09:21:41
如题,我的sql语句可写成"select count(*) as RecNum from mytable where age = 30"
或"select count(*) from mytable where age = 30",现在不知道该如何把结果赋给变量int n
请教!!!!!!!!!!1我已经试了好几个方法都不行,请指教!!!!!!!!!!
...全文
237 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
忠无wei 2009-06-26
  • 打赏
  • 举报
回复
我一直用的SQLSERVER 最近才接触ORACLE 所以顺带就进来了 HOHO
bzcnc 2009-06-23
  • 打赏
  • 举报
回复
看过C#,没有深入学习过它,帮版主顶顶吧
忠无wei 2009-06-23
  • 打赏
  • 举报
回复
对不住 SQL SERVER 用多了
上面应该是OracleCommand,
mrnian2008 2009-06-23
  • 打赏
  • 举报
回复
我已经搞定了,但还是谢谢大家。3楼正解,不过应该改改:
int n=Convert.toint32( myCommand.ExecuteOracleScalar().toString());
忠无wei 2009-06-23
  • 打赏
  • 举报
回复
在C#中sqlcommand 有个方法SqlCommand.ExecuteScalar 方法执行查询,并返回查询所返回的结果集中第一行的第一列。忽略额外的列或行。

public void CreateMySqlCommand(string myScalarQuery, SqlConnection myConnection)
{
SqlCommand myCommand = new SqlCommand(myScalarQuery, myConnection);
myCommand.Connection.Open();
int n=Convert.toint32( myCommand.ExecuteScalar().toString());
myConnection.Close();
}
n就是你要的

csuxp2008 2009-06-23
  • 打赏
  • 举报
回复
用select...into...不可以吗?
anxing 2009-06-22
  • 打赏
  • 举报
回复
可以这么做,
通过C#调用,返回一个DataSet,然后把DataSet中第一行第一列数据取出来就好了.
DataSet ds=......
int n=Convert.ToInteger(ds.Table[0].Row[0][0]);
代码大概是这样.

17,137

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧