Saltar al contenido

Truncar una tabla en un procedimiento almacenado

Solución:

Todas las declaraciones DDL en Oracle PL / SQL deben usar Execute Immediate antes de la declaración. Por lo tanto, debe usar:

execute immediate 'truncate table schema.tablename';

Además de ejecutar de inmediato, también puede utilizar

DBMS_UTILITY.EXEC_DDL_STATEMENT('TRUNCATE TABLE tablename;');

La declaración falla porque el proceso almacenado está ejecutando DDL y algunas instancias de DDL podrían invalidar el proceso almacenado. Al utilizar los enfoques de ejecución inmediata o exec_ddl, el DDL se implementa a través de código no analizado.

Al hacer esto, debe estar atento al hecho de que DDL emite un compromiso implícito tanto antes como después de la ejecución.

prueba el siguiente código

execute immediate 'truncate table tablename' ;
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *