3
更新一個表中的數據與來自其他使用公共密鑰更新一個表從另一個數據使用公共密鑰
create table table1 (
id varchar2(4),
name varchar2(10),
desc_ varchar2(10)
)
create table table2 (
id varchar2(4),
id_new varchar2(4)
)
insert into table1 values('1111', 'a', 'abc')
insert into table1 values('2222', 'b', 'def')
insert into table1 values('3333', 'c', 'ghi')
insert into table1 values('4444', 'd', 'jkl')
insert into table2 values('1111', '8080')
insert into table2 values('2222', '9090')
merge into table1 t1
using (select * from table2) t2
on (t1.id = t2.id)
when matched then update set t1.id = t2.id_new
error: ORA-27432: step does not exist for chain .
原因是'在ON子句中引用的列無法更新',您可以使用相同的無引用列進行合併 – ajmalmhd04