Skip to main content

How to use DDL or DML within PL/SQL Block

SET SERVEROUTPUT ON
DECLARE 
  TBSTMT VARCHAR2(2000):='CREATE TABLE DEMO (ID NUMBER,MSG VARCHAR2(20))';
BEGIN
  EXECUTE IMMEDIATE TBSTMT;
END;

Comments

  1. You can create/drop tables in PL/SQL block with Execute immediate command
    actually any programming language follows pre/post validations for host variable
    here pre checking wl be done,so at the time of compilation we have to submit all host variables,but we can't with ddl stms,so where ever we keep Execute immediate stmt that stmt wl be validate at runtime only.
    this is nothing but Dynamic SQL.previously we are using in-built pakage ,now execute immediate command .

    ReplyDelete

Post a Comment