社区
Oracle
帖子详情
请问update语句有返回值吗,怎么看update语句影响了多少条记录?
yangyang9975
2004-10-26 01:05:21
在update语句中有where条件,那么
1.怎么看有没有影响记录,影响了多少条
2.如果一条都没有影响,那怎么知道,有没有返回值可以看
...全文
988
9
打赏
收藏
请问update语句有返回值吗,怎么看update语句影响了多少条记录?
在update语句中有where条件,那么 1.怎么看有没有影响记录,影响了多少条 2.如果一条都没有影响,那怎么知道,有没有返回值可以看
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
jack_4826
2004-10-26
打赏
举报
回复
写完update后,直接就可以用sql%rowcount进行判断
yangyang9975
2004-10-26
打赏
举报
回复
哦,明白了,找到了
谢谢,结贴
zhaokeke2004
2004-10-26
打赏
举报
回复
http://www.quest-pipelines.com/newsletter-v4/0903_D.htm
ATGC
2004-10-26
打赏
举报
回复
这个是隐式游标
到WWW.GOOGLE.COM搜索一下,多得是呢。。
yangyang9975
2004-10-26
打赏
举报
回复
sql%rowcount 是属于什么用法
yangyang9975
2004-10-26
打赏
举报
回复
我是想要在过程里利用更新结果作下一步操作
谢谢大家,我还想请教一下 类似于 sql%rowcount 的用法在哪里可以查到,有没有更多的用法?
lialin
2004-10-26
打赏
举报
回复
呵呵,你也可以利用查询条件count一下!
ATGC
2004-10-26
打赏
举报
回复
如果在SQL*PLUS里面操作,本来就会提示得
SQL> update aa set strname='aa' where rownum=1;
1 row updated.
bzszp
2004-10-26
打赏
举报
回复
sql%rowcount
例如:
13:06:26 SQL> begin
13:06:31 2 update tb set col1=col1;
13:06:33 3 dbms_output.put_line(sql%rowcount);
13:06:35 4 end;
13:06:35 5 /
6
PL/SQL 过程已成功完成。
已用时间: 00: 00: 00.78
13:06:35 SQL> select * from tb;
COL1 COL2 COLNEW
---------- ------------------------------ ------------------
1 aaa aaa
2 aaa aaa
3 aaa aaa
4 bba bba
5 bbb bbb
8 bbb ccc
已选择6行。
已用时间: 00: 00: 00.31
13:06:41 SQL>
赵强老师:Oracle数据库从10g到11g(3)DML
语句
和DDL
语句
学习并掌握DML
语句
:insert、
update
和delete
语句
;并能够使用DDL管理常见的数据库对象:表、视图、序列、索引和同义词。
update
语句
的
返回值
是什么
update
语句
的
返回值
是什么 执行一
条
update
语句
,执行成功后
返回值
是 1 ,所以就理所当然的认为返回的是受
影响
的行数, 但是当你再次执行这
条
update
语句
时,按正常的逻辑,数据已存在,更新不会成功,应当返回 0,但是
返回值
依旧 是 1 (已测试过),所以
返回值
并不是受
影响
的行数,查看别人的文章,得知
返回值
是matched
记录
数(匹配到的行数) 如果想设置
返回值
是受
影响
的行数,修改数据库链...
mybatis的
update
语句
返回值
问题
一、mybatis的
update
语句
返回值
问题 默认情况下,mybatis 的
update
操作
返回值
是
记录
的 matched 的
条
数,并不是
影响
的
记录
条
数。严格意义上来将,这并不是 mybatis 的
返回值
,mybatis 仅仅只是返回的数据库连接驱动(通常是 JDBC )的
返回值
,也就是说,如果驱动告知更新 2
条
记录
受
影响
,那么我们将得到 mybatis 的
返回值
就会是 2 和 mybatis 本身是没有关系的。道理我都懂,如果我们非得要 mybatis 的
update
操作明确的返回受
影响
的.
update
语句
的
返回值
问题总结
执行一
条
update
语句
,执行成功后
返回值
是 1 ,所以就理所当然的认为返回的是受
影响
的行数, 但是当你再次执行这
条
update
语句
时,按正常的逻辑,数据已存在,更新不会成功,应当返回 0,但是
返回值
依旧 是 1 ,所以
返回值
并不是受
影响
的行数,实际上的
返回值
是matched
记录
数(匹配到的行数) 如果想设置
返回值
是受
影响
的行数,修改数据库链接配置:增加 useAffectedRows=tr...
mysql中
update
语句
的
返回值
mybatis中执行,
update
函数,那么这个函数的
返回值
是matched(匹配的)行数还是changed(受
影响
的)行数呢? 默认情况下是matched
记录
数,并不是changed
记录
数 如何让其
返回值
为受
影响
(changed)的
记录
数呢? 只需在mysql数据连接url参数加useAffectedRows=true即可 jdbc.url=jdbc:mysql://localhost:3306/ssm?useAffectedRows=true ...
Oracle
17,086
社区成员
55,238
社区内容
发帖
与我相关
我的任务
Oracle
Oracle开发相关技术讨论
复制链接
扫一扫
分享
社区描述
Oracle开发相关技术讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章