http://www.perlmonks.org?node_id=1198025


in reply to Re^4: copying mysql table data to oracle table
in thread copying mysql table data to oracle table

The point is, there's nothing you can do about it, being you haven't locked the table or records.
I don't understand your statement at all. If your transaction fails, you go back to the beginning, meaning you start a new transaction, fetch the record again, and decide what to do about it. Maybe the intervening update obviated the need for your change, and maybe it didn't. But the point is, that's what you can do about failed transactions. You just retry them.
The cache i referred to in the database cache where table are often kept for future statements.
No, I'm talking about the OP's original idea of starting off with a "select * from emp" and throwing the whole thing in a big perl hash for later reference. Bad Idea, right? Right?
If the statement is insert where not exists, there should be no errors...
There could be any sort of column constraint violation, like an out-of-range value or a missing foreign key. You at least want to be able to tell the user, "here are the records that didn't get updated."
We should not need more context...
The context we need is: can we just lock the table and prevent anybody else from making any updates until we're done, or is that going to cheese too many people off?