title: PL/SQL "WHERE CURRENT OF" vs "ROWID"
body: <p>Why Oracle made "where current of" syntax when you can use "rowid"? Example:</p>
  
  <pre><code>BEGIN
    FOR rec IN (SELECT t.column1, t.rowid rid FROM test_table) LOOP
      UPDATE test_table tb SET column1 = some_function(rec.column1) WHERE tb.rowid = rec.rid;
    END LOOP;
    COMMIT;
  END;
  
  DECLARE 
    CURSOR cur IS SELECT t.column1 FROM test_table;
    param1 test_table.column1%TYPE;
  BEGIN
    LOOP
      FETCH cur INTO param1;
      UPDATE test_table tb SET tb.column1 = some_function(param1) WHERE CURRENT OF cur;
      EXIT WHEN cur%NOTFOUND;
    END LOOP;
    COMMIT;
  END;
  </code></pre>