Mike Yearwood
Toronto, Ontario, Canada
Information générale
Catégorie:
Base de données, Tables, Vues, Index et syntaxe SQL
Hi all
Back when I used views I began using one DBC for views and another for tables. The premise was that the contention caused by two users accessing a single DBC for a single view would be eliminated. This worked very well.
A warning from Drew Speedie has me thinking this situation through. Again, to me this is mostly academic now, but here goes. The warning is that transactions are not supported across multiple DBCs.
If a view is in DBCa and a table is in DBCb, when I alter the record(s) in the view, begin a transaction, issue a tableupdate (on the view of course) and something goes wrong, I rollback the transaction. Is the transaction spanning multiple DBCs? I think not.
I'm guessing here, but the transaction is wrapping updates. Data is moved from the view to the table. If the transaction fails, only the changes made to the table must be undone. I doubt the view itself is updated. The getfldstate flags are certainly updated, but I'm guessing they are not part of the cursor. Even so, that cursor is exclusive and any reverts should work.
So the transaction could be managing updates in a single DBC.
Anyone know for sure?
Suivant
Répondre
Voir le fil de ce thread
Voir le fil de ce thread à partir de ce message seulement
Voir tous les messages de ce thread
Voir tous les messages de ce thread à partir de ce message seulement