OpenBase Instructions


Subscribe to the Openbase News RSS feed to get the latest information on OpenBase products.


Instructions












NOTE BUILD # 52 MAKES A LARGE CHANGE TO HOW TRANSACTIONS ARE HANDLED




The REALbasic connectivity module attempts to follow the REAL basic API as closely as possible.


However, this API is ambiguous as to how transactions are handled in all cases.




In the language reference it is noted that when you use the InsertRecord method a transaction is automatically started.


But, if you use the RecordSet UPDATE or DELETE methods one is not.




This makes transactions ambiguous and you can run into issues.


Sometimes you will find you do need to commit, and sometimes the operations would happen immediately.


For instance, code like




db.insertrecord




rs.delete




db.commit




would have both the insert and commit in a transaction but code like




rs.delete




db.insertrecord




db.commit




would only include the insertrecord since delete does not automatically start a transaction.




This seems horribly inconsistent.




With that in mind the following changes for B52 are made to make TRANSACTIONS entirely MANUALLY controlled and no automatic start of transactions is done any longer.


Most people should NOT notice this.




[B52]


? ? [CHG][DBRS]? ? ? - reverted change from B51 where delete and update fof recordsets would start a transaction


?? ? ? ? ? ? ? ? ? ? ? removed transaction start from InsertRecord as well




?? ? ? ? ? ? ? ? ? ? ? ALL transactions are MANUALLY INITIATED and COMPLETED (rolled back or committed)


? The change for INSERT should not be noticeable to most users



?? ? [NEW][DB] ? ? ? - added a new method BeginTransaction that takes an optional parameter to start a passive transaction





© Copyright 2008 OpenBase International, Ltd. All rights reserved.