> Oracle does not have a "rowid" id/timestamp for this (oracle 
> standard rowid pseudocolumn is actually a row identifier, not 
> row version identifier, guaranteed to be unique only within 
> the table itself).
> 
> In Oracle 11g there is the ORA_ROWSCN that could be used to 
> identify this 
> (http://download.oracle.com/docs/cd/B28359_01/server.111/b2828
> 6/pseudocolumns007.htm#BABFAFIC), but if we have to be 
> compatible back to version 9 (which imho we really should, as 
> oracle installs tend to upgrade very conservatively), we 
> cannot rely on it.
> 
> The simplest thing working for all versions would be to add a 
> "rowid" column to the table, and a trigger+sequence that 
> updates the value upon updates, same as we do for 
> autoincrement colums. I would say using integers guarantees 
> better consistency than timestamps - timestamps in oracle can 
> go up to 9 digits precision (as in fractions of a second), 
> with 6 digits being the default. But I also like to always 
> add a LastModified column to all my tables, just for traceability...
> 

Ah I should've explained was using timetamps on SQL Server.

MSSQL used the term timestamp for its rowversion datatype, but they were 8
byte values, not the usual/standard timestamp. 
In 2000 a synonym called rowversion was added, and deprecated the use of the
timestamp datatype.

Jared

-- 
Components mailing list
Components@lists.ez.no
http://lists.ez.no/mailman/listinfo/components

Reply via email to