Por que não podemos escrever instruções ddl diretamente no bloco PL / SQL, por exemplo, quando eu escrevo CREATE OR REPLACE PROCEDURE test IS BEGIN truncate table table_name; // error END test; / Mas, CREATE OR REPLACE PROCEDURE test IS BEGIN execute immediate 'truncate table table_name'; //...