Why aren't you just
update table_name set start_date = systimestamp where column='Q'
If you suspect that the table has locks, there are several tables for checking: dba_locks , v$session , v$session_blockers , etc. They are useful when the user is blocking something with a random update without commit or rollback , but you should be able to see if there is a possibility of blocking locks from the architecture of your application. You just have to imitate all the scenarios on paper.
source share