Post
by Klaus-Dieter Remmler » 17 Jun 2003, 11:53
Posted by: kdre...@boerner-web.de (Klaus-Dieter Remmler)
Hallo,
the only DBMS that nativly supports ROWIDs (I know) is Oracle. The
support of ROWIDs in Oracle is quite different from SQLBase: The ROWID
is used as pointer to the physical row of data. Therefore UPDATEs not
always change the ROWID like in SQLBase and the ROWID cannot used for
optimistic locking techniques such as in SQLBase.
The other hint I can give to you, is to use a DBMS that allowes
TIMESTAMPs (e.g. SQL Server). In such engines you can define your own
pseudocolumn ROWID with data type TIMESTAMP. This column is filled
automaticly be the engine. The TIMESTAMP data type must support
milliseconds or smaller intervalls to work correct.
We use both techniques to support SQLBase, Oracle and SQL Server in
our applications. In connection with using primary keys in Oracle, the
pseudooptimistic way works good (only the last change wins under
Oracle - under SQLBase the first change wins!). SQL Server TIMESTAMPs
work very well and provide the neccessary functions automatically if
you are not using ROWID column for primary keys.
Hope it helps.
Regards from Germany
Dr. Klaus-Dieter Remmler