ORACLE修改关联表的语句 15

Oracle数据中,现有两个表,bill,suppliergoodsnumber,billid,supplierid是表名bill中的列;supplierid是表bill... Oracle数据中,现有两个表,bill,supplier

goodsnumber,billid,supplierid是表名bill中的列;
supplierid是表bill的外键,supplier的主键
suppliername是通过supplierid关联查询到的列
现在的需求是关联修改suppliername,以下语句执行修改,无法保存,请大家指点,谢谢!
String sql="update (select b.*,s.suppliername,rownum rr from bill b,supplier s where s.supplierid=b.supplierid) set goodsnumber=?,suppliername=? where billid=?";
修改后

update bill b set goodsname='汽车配件',torvover='5000'
where billid=6
and exists(select suppliername from supplier s where s.supplierid=b.supplierid and s.suppliername='阿里巴巴'

另外我要同时修改suppliername,是不是这样写就可以了?
update bill set goodsname='汽车配件',torvover='5000',suppliername='百度'~~后面的不变
展开
 我来答
tj_angela
2015-07-13 · TA获得超过7530个赞
知道大有可为答主
回答量:6797
采纳率:75%
帮助的人:2675万
展开全部
update更新表不能用重命名
update bill set goodsname='汽车配件',torvover='5000'
where billid=6
and exists (select suppliername from supplier s where s.supplierid=bill.supplierid and s.suppliername='阿里巴巴')
追问
我的理解是,当执行(select suppliername from supplier s where s.supplierid=bill.supplierid and s.suppliername='阿里巴巴')这个条件后,update是在符合条件的新表里进行的,现在修改的数据,在原来的bill里是不会变的,
百度网友d4808edfd
2015-07-13 · TA获得超过332个赞
知道小有建树答主
回答量:258
采纳率:0%
帮助的人:115万
展开全部
我看不出什么问题。。。。。。。。无法保存,报什么错呢
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式