Din kod bör vara så här:
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 kommer dock inte att fungera eftersom du endast angav en bindningsvariabel (:REF_ID
) men du angav två värden (i.CUSTOMER_REF_ID
och i.CUSTOMER_ID
). Bindningsvariabler och värden måste matcha.
Om SQL%ROWCOUNT
returnerar "1" sedan uppdaterade du en rad - kontrollera ditt UPDATE-utdrag om du inte är nöjd med det.