有一张桌子叫TableA
,另一张桌子叫TableB
我需要将ValueC
表中列的值复制TableB
到列ValueD
中TableA
。两个表共享一个公共列:Table_id
我尝试使用:
DECLARE
CURSOR c_App
IS
SELECT *
from TableA
BEGIN
for i in c_App
LOOP
select ValueD from TableB where Table_id = c_App.Table_id;
END LOOP;
update TableA set ValueC = ValueD where Table_id = c_App.Table_id
END;
但是,我在 SQL 开发人员中遇到了错误:
PLS-00103: Encountered the symbol "END" when expecting one of the following: begin function package pragma procedure subtype type use <an identifier> <a double-quoted delimited-identifier> form current cursor 06550. 00000 - "line %s, column %s:\n%s" *Cause: Usually a PL/SQL compilation error. *Action:
我究竟做错了什么?
有没有更简单的方法?我对 PL/SQL 比较陌生,虽然我觉得加入可能是一个更简单的选择。