永发信息网

在oracle执行update语句的时候,整条记录的ID被改变,执行update前是1 执行后该条记录的id变为2

答案:6  悬赏:20  手机版
解决时间 2021-01-27 11:05
  • 提问者网友:蔚蓝的太阳
  • 2021-01-27 03:50
语句如下:
update t_user set id=42 , name='bb' where id=42;

问题已经解决了,是触发器的问题,谢谢大家的回答
最佳答案
  • 五星知识达人网友:摆渡翁
  • 2021-01-27 04:43
你这个语句是想要做神马?你要修改的是name 那麼直接set name就可以了 然後在where 裏面写
id = 42.为什麽要先set id = 42然後where id = 42??这样写肯定要发生某些问题啊
全部回答
  • 1楼网友:雾月
  • 2021-01-27 10:15
你没有必要set id=42,直接写就应该可以了吧!你可以试一下!
  • 2楼网友:有你哪都是故乡
  • 2021-01-27 08:50
你那个id是自动生成吗? update t_user set name='bb' where id = 42.这句子就行了。多加前面的id=42没用,多了解下rownumber对你有所帮助
  • 3楼网友:我住北渡口
  • 2021-01-27 08:31
直接关联一下就行了。 update a set a.run_cap=(select sum(b.run_cap) from b where a.cons_id=b.cons_id group by a.cons_id) where exists (select 1 from b where a.cons_id=b.cons_id);
  • 4楼网友:风格不统一
  • 2021-01-27 06:58
update t_user name='bb' where id=42;
  • 5楼网友:白昼之月
  • 2021-01-27 06:21
你把你想要的东西写出来吧 现在看你的语句没明白你想要做什么。 ID 是否为 t_user 的主键? id = 42 又 set id = 42 这就没懂 如果想把ID 为 42的 所有列都将名字改成 'bb' 可以直接这样写: update t_user set name='bb' where id=42;
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯