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

Oracle insère dans table2 puis supprime de table1, exception en cas d'échec

ce stmt fonctionne sans la clause where

Cela peut être dû au fait que lorsque vous concaténez les chaînes, elles sont converties implicitement et votre condition where échoue au moment de l'exécution. Essayez le USING clause avec des variables liées.

stmt_ins:= 'INSERT  INTO ' || n_tab2 || ' SELECT * FROM ' || n_tab || ' where ' || dt_criado || ' < :dt ' ;

EXECUTE IMMEDIATE stmt_ins USING SYSDATE;