title: plsql: inserting Multiple rows from select and ignore duplicates
body: <p>I am using oracle 10g with TOAD.
  I need to insert lacs of records using INSERT FROM SELECT.</p>
  
  <pre><code>BEGIN    
      INSERT INTO MYTABLE(C1,C2,C3)  
      SELECT C1,C2,C3 FROM MYTABLE2 WHERE C1&gt;100;
  EXCEPTION    
           WHEN DUP_VAL_ON_INDEX  THEN NULL;    
  COMMIT;    
  END;
  </code></pre>
  
  <p>Here, the problem , i am facing is , if this select queries return rows which is already exists in MYTABLE, THEN all transaction will be rolledback.</p>
  
  <p>Is there a way to insert all non-existent rows ,ignoring duplicate rows and continuing with insertion of non-existent rows and then committing the transaction?</p>