Oracle
 sql >> Base de données >  >> RDS >> Oracle

Récupérer le nombre de lignes mises à jour

Votre code devrait ressembler à ceci :

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');

Cependant, cela ne fonctionnera pas car vous n'avez spécifié qu'une seule variable de liaison (:REF_ID ) mais vous avez fourni deux valeurs (i.CUSTOMER_REF_ID et i.CUSTOMER_ID ). Les variables de liaison et les valeurs doivent correspondre.

Si SQL%ROWCOUNT renvoie "1" alors vous avez mis à jour une ligne - vérifiez votre instruction UPDATE si cela ne vous convient pas.