У меня есть две таблицы: doc (в базе данных1) и docs (в базе данных2).Ниже приведены ключевые поля:
doc: KEY,OLD_KEY
docs: RKEY
Теперь doc.OLD_KEY = docs.RKEY.Я работаю над проверкой, где doc.OLD_KEY = docs.RKEY и устанавливаю docs.RKEY = doc.KEY.
Я написал приведенный ниже синтаксис, однако я не могу успешно запустить его, поскольку у меня нет 'Я работал с циклом for раньше.
DECLARE
OLD_KEY_var NUMBER(10);
KEY_var NUMBER(38);
BEGIN
FOR dc.KEY IN (
SELECT dc.KEY,dc.OLD_KEY INTO KEY_var,OLD_KEY_var
FROM user.database2 docs,database1 dc
where docs.RKEY=dc.OLD_KEY
) LOOP
UPDATE user.database2 docs SET docs.RKEY = KEY_var where docs.RKEY=OLD_KEY_var;
END LOOP;
END;
У меня есть связь и я предоставляю привилегии между таблицами, и я получаю