Din kode skal være sådan her:
l_sql := 'UPDATE '||l_prefix||'CRS_CUSTOMERS SET CUSTOMER_SOURCE_REF_ID = :REF_ID';
EXECUTE IMMEDIATE l_sql USING i.CUSTOMER_REF_ID, i.CUSTOMER_ID;
dbms_output.put_line('Updated ' || SQL%ROWCOUNT || ' rows');
Det vil dog ikke fungere, fordi du kun har angivet én bindevariabel (:REF_ID
), men du har angivet to værdier (i.CUSTOMER_REF_ID
og i.CUSTOMER_ID
). Bindingsvariabler og -værdier skal matche.
Hvis SQL%ROWCOUNT
returnerer "1", så har du opdateret en række - tjek din UPDATE-erklæring, hvis du ikke er tilfreds med det.