FOR UPDATE clause of SELECT applies only when
autocommit is set to 0 or the
SELECT is enclosed in a transaction. A lock is acquired on the rows, and other transactions are prevented from writing the rows, acquire locks, and from reading them (unless their isolation level is
autocommit is set to 1,
LOCK IN SHARE MODE and
FOR UPDATE clauses have no effect.
If the isolation level is set to
SERIALIZABLE, all plain
SELECT statements are converted to
SELECT ... LOCK IN SHARE MODE.