Re: Can I trust this statement? (update test set mystring = replace(mystring,'.','*');)?
It will (attempt to) lock every record that existed at the time your transaction began. If others are updating/deleting at the same time then:
- if they lock the record first, your query is blocked until they commit/rollback
- if you lock it first, their query is blocked until you commit/rollback
Once your update completes and you commit, every row it updated will be saved. There could be new rows that have been inserted by others after your transaction began, these won't have been updated.
I guess I was concerned that the context of the update would be for the column alone and that my data might get 'shuffled' up/down based on inserts or deletes. Your reply makes sense and is very appreciated. I'm obviously new to Oracle.