[Oracle]如何得到更新行数的问题

ac669 2006-06-04 08:31:32
我在c#程序中,执行一个update sql句(Oracle数据库),
执行完了后c#程序还需要知道这个update sql句更新了多少行记录,
这个sql句怎么写?
Oracle有没有类似Sql Server的@@rowcount之类的东东?

谢谢!
...全文
473 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
ld_thinking 2006-06-08
  • 打赏
  • 举报
回复
同2楼

cmd.ExecuteScalar() 返回的是单个执行结果
Reeezak 2006-06-08
  • 打赏
  • 举报
回复
@@ROWCOUNT??


ORACLE中,不是用SQL%COUNT 就是 SQL%ROWCOUNT
具体是哪个不记得了,lz自己试试吧
机器人 2006-06-08
  • 打赏
  • 举报
回复
ExecuteNonQuery()的返回值就是更新数据的行数。
copico 2006-06-04
  • 打赏
  • 举报
回复
Dim cmd As New System.Data.OracleClient.OracleCommand
cmd.ExecuteScalar() ‘这个就是影响的数量
#include "lrd.h" static LRD_INIT_INFO InitInfo={LRD_INIT_INFO_EYECAT}; static LRD_DEFAULT_DB_VERSION DBTypeVersion[]={{LRD_DBTYPE_NONE,LRD_DBVERSION_NONE}}; //这里的LRD_VAR_DESC数据结构声明是很重要的,他是用来存储sql结果数据集的结构体,第一个参数头文件中就是这么写的,第二个参数是最大行数,第三个参数是每一行的最大长度,如果获得的查询结果比定义的长,运行时就会报错,提示列被截断,最后一个参数是查询结果的类型,可以再帮助中的索引输入data types, database,列出的表格中是各种变量类型的名称 static LRD_VAR_DESC NUM ={LRD_VAR_DESC_EYECAT, 10, 32, LRD_DBTYPE_ORACLE, {1, 1, 0},DT_LONG_VARCHAR}; //下面这些句柄等变量的申请都可以照着帮助中的例子写 /***************** 这里省略了,具体见附件 */ Action() { lrd_ora8_stmt(OraStm1,"select service_num from auto_zb_provision where rownum<2",1,0,0); //执行定义的sql,并且将结果行数返回到rownum中 lrd_ora8_exec(OraSvc1,OraStm1,0,0,&rownum;,0,0,0,0,1); //绑定该列 lrd_ora8_bind_col(OraStm1,&OraDef1;,1,&NUM;,0,0); //设定保存列中的某个数据到row中,第二个参数为第几列,第三个参数为第几行(只能保存一个值),最后一个参数就是你想要保存到的parameter名称 lrd_ora8_save_col(OraStm1, 1, 1, 0, "result"); //这个遍历刚才查询的结果,第二个参数0表示就1行,负号表示遍历所有结果,绝对值表示实际有多少行,第三个参数表示一次遍历最大进行多少行(不能大于LRD_VAR_DESC中定义的第二个参数,即最大行数)

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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