Оператор UPDATE не обновляет ни одну строку
У меня есть две таблицы (ORACLE): D_CONTROL_CARGA и F_PS_CARGA_DIARIA_D
SELECT control_id, control_cd, control_query_tx
FROM ONHR_DIM.D_CONTROL_CARGA;
SELECT FECHA_ID, CONTROL_ID, CONTROL_CD, CANTIDAD_CA
FROM onhr_dim.F_PS_CARGA_DIARIA_D;
Я хочу обновить столбец CANTIDAD_CA этим кодом PL / SQL:
DECLARE
sql_qry ONHR_DIM.D_CONTROL_CARGA.control_query_tx%TYPE;
cantidad_ca ONHR_DIM.F_PS_CARGA_DIARIA_D.CANTIDAD_CA%TYPE;
CURSOR cQueries IS SELECT control_id,control_query_tx FROM ONHR_DIM.D_CONTROL_CARGA;
BEGIN
FOR reg IN cQueries LOOP
sql_qry:=SUBSTR(reg.control_query_tx, 0, LENGTH(reg.control_query_tx) - 1);
IF sql_qry not like '%to_char(sysdate%' THEN
execute immediate sql_qry into cantidad_ca;
UPDATE ONHR_DIM.F_PS_CARGA_DIARIA_D SET CANTIDAD_CA=cantidad_ca WHERE CONTROL_ID=reg.control_id AND FECHA_ID=TRUNC(SYSDATE);
END IF;
END LOOP;
END;
Затем я получил: Обновленные строки -1
Что мне нужно изменить?