Subject Re: [IBO] Using metadata in delphi
Author Geoff Worboys
Lee,

Find/Download the Interbase Language Reference. Part of the IB6 beta
documentation: http://www.interbase2000.org/ib_doc.htm

It describes the metadata tables. To read the metadata just select
like in a normal table. It is NOT recommended that you try to update
the tables directly, just use the information to determine whether
changes are required. Then create the necessary SQL and run through
TIB_Script.

Interbase comes with built in versioning of metadata. This limits
changes to system metadata to 255 occurances per item - after which
the database must be backed up and restored to reset the version
information.

Because of these complications, you may find it easier to build a new
database and perform a data-transfer between the old and new (rather
than trying to issue alter commands that may or may not work).

It seems to me that this gives you more control and better
predictability. Your update program can run a script that creates the
new database, then transfer data from the old database - allowing you
to take control over the transfer process and fill-in of new fields
etc.

As for examples/snippets. If you have full IBO source take a look at
the source for IB_WISQL and SchemaCaching which do a lot of metadata
interrogation.


HTH

Geoff Worboys
Telesis Computing