title: Oracle: What does 'execute immediate' mean?
body: <p>What is the significance of <code>execute immediate</code> in PL/SQL when used with DML and DDL statements? Does <code>execute immediate</code> implicitly commit to a database like DDL statements do ?</p>
  
  <p>The following is an example I have encountered:</p>
  
  <pre><code>SELECT 'TRUNCATE TABLE BD_BIDS_APPR_DET' INTO V_SQL1 FROM DUAL;
  EXECUTE IMMEDIATE V_SQL1;
  
  SELECT 'TRUNCATE TABLE BD_BIDS_SYS_DET' INTO V_SQL1 FROM DUAL;
  EXECUTE IMMEDIATE V_SQL1;
  
  SELECT 'TRUNCATE TABLE BD_BIDS_EXT_DET' INTO V_SQL1 FROM DUAL;
  EXECUTE IMMEDIATE V_SQL1;
  </code></pre>