On 3-1-2012 22:38, Ann Harrison wrote: > Mark, > >> I am currently going over the JDBC metadata returned by Jaybird, and I >> was looking for a way to see if a column is COMPUTER BY / GENERATED >> ALWAYS AS. >> >> I found that I should probably look at RDB$FIELDS.RDB$COMPUTED_BLR or >> RDB$COMPUTED_SOURCE for this, but I noticed that >> RDB$RELATION_FIELDS.RDB$UPDATE_FLAG is 0 for a computed column, while it >> is 1 for 'normal' fields. > > The definitive sign of a computed field is RDB$COMPUTED_BLR in either > RDB$FIELDS or RDB$DOMAINS if the field is defined through a domain. > The computed source is kept for the convenience of utilities that > recreate the DDL, but can be deleted without changing the semantics of > the field. I wouldn't rely on the update flag which could be used in > the future for other types of fields that can't be modified.
There is no RDB$DOMAINS (domains are also stored in RDB$FIELDS), but as far as I know a domain cannot have a COMPUTED BY defined (at least not through CREATE DOMAIN). And indeed, I already noticed the update-flag is also used for other types of fields. Thanks :) Mark -- Mark Rotteveel ------------------------------------------------------------------------------ Write once. Port to many. Get the SDK and tools to simplify cross-platform app development. Create new or port existing apps to sell to consumers worldwide. Explore the Intel AppUpSM program developer opportunity. appdeveloper.intel.com/join http://p.sf.net/sfu/intel-appdev Firebird-Devel mailing list, web interface at https://lists.sourceforge.net/lists/listinfo/firebird-devel