title: UPSERT multiple statements at once Oracle SQL
body: <p>I have some random update statements such as this:</p>
  
  <pre><code>UPDATE tab1 SET a = 'a', b = 'b' WHERE id = 1;
  UPDATE tab2 SET c= = 'c' WHERE id = 2;
  UPDATE tab1 SET a = 'a', d = 'd' WHERE id = 3;
  .
  .
  .
  UPDATE tab1 SET a = 'a', b = 'b' WHERE id = 100;
  </code></pre>
  
  <p>I need to upsert these multiple statements inside of PLSQL. I found syntax to upsert one at a time:</p>
  
  <pre><code>begin
     insert into tab1 (a,b); 
        values ('a', 'b');
  exception
     when dup_val_on_index then
        UPDATE tab SET a = 'a', b = 'b' WHERE id = 1;
  end
  </code></pre>
  
  <p>I am not concerned about concurrency, I have many update statements I need to insert at once (at once because I am using Oracle APEX and have just one pl/sql sheet to do all of this).</p>
  
  <pre><code>TAB1:
  | ID | A | B | D |
  
  TAB2:
  | ID | D |
  </code></pre>