Oracle locking with SELECT...FOR UPDATE OF Oracle locking with SELECT...FOR UPDATE OF oracle oracle

Oracle locking with SELECT...FOR UPDATE OF


From the 10G PL/SQL documentation:

When querying multiple tables, you can use the FOR UPDATE clause to confine row locking to particular tables. Rows in a table are locked only if the FOR UPDATE OF clause refers to a column in that table. For example, the following query locks rows in the employees table but not in the departments table:

DECLARE  CURSOR c1 IS SELECT last_name, department_name FROM employees, departments    WHERE employees.department_id = departments.department_id           AND job_id = 'SA_MAN'      FOR UPDATE OF salary;