是否可以使用连接在单个查询中更新Oracle中的多个表?如果是这样,语法是什么?我的同事说他已经在MySQL中完成了。Oracle中的多表更新
更新 - 我想要做的就是这样的事情
UPDATE table1 t1 JOIN table2 t2 ON t1.id = t2.id SET t1.column1 = 'ABC', t2.column2 = 'BCD' WHERE <condition>
是否可以使用连接在单个查询中更新Oracle中的多个表?如果是这样,语法是什么?我的同事说他已经在MySQL中完成了。Oracle中的多表更新
更新 - 我想要做的就是这样的事情
UPDATE table1 t1 JOIN table2 t2 ON t1.id = t2.id SET t1.column1 = 'ABC', t2.column2 = 'BCD' WHERE <condition>
什么问题是你想解决?您不能在Oracle中使用单个更新语句来更新多个表,但可以在视图上使用“反转”触发器。
我只有SELECT和UPDATE权限。我无法创建触发器。 – 2010-11-03 08:23:55
@Joyce Babu:视图和触发器可以在你自己的模式中。您不应该在表上需要任何其他特权。 (我假设你至少可以在你自己的模式中创建对象。) – 2010-11-23 05:48:47
谢谢jonearles。该项目结束了,我无法再访问服务器来测试它。 – 2010-11-24 02:20:54
您是否找到了解决方案?我有一个类似的问题,我想用一个数据库调用来更新两个表中每个表的状态列,而不是两个单独的调用。 – bakoyaro 2010-11-19 18:26:27
不是。它不起作用。 – 2010-11-20 02:01:30