Subject Re: [IB-Architect] How/When is BLR 'compiled'
Author Jim Starkey
At 03:31 PM 7/21/00 +0100, Phil Shrimpton wrote:
>
>
>So first (support related) question is there a way to recompile all
>SP/Triggers in the correct order?
>

Stored procedures and triggers are compiled by DSQL (dynamic SQL)
which is colocated with the engine but, in fact, "outside the box."
The only thing that the engine pays attention to is the actual blr.
The source blob is purely documentation. This does mean that if you
don't like the SQL-ish syntax, you can safely invent and implement
your own.

It would be trivial to write a program to extract the trigger and
stored procedures defintions and re-define them.

>Second (architect related) question, if this 'inheritance' functionality is
>to be implemented, would it be just for the initial CREATE of the descendant
>object, or would changes to the 'Base' object at a later date be reflected
>in child classes. If the later, how would the 're-build' of the BLR in the
>correct order be handled.
>

I actually fudge a bit. Although it could be implemented as I described,
it would be simplier for somebody (engine? user? DDL processor?) to create
the physical base table distinct from the base table, which would be
virtual. Whether it would be better to do a transmogrification on
first declaration of an extension or to have syntax that declares a
table as a base is an interesting question, but one that can be ducked
until later in the game.

>Feel free not to answer if I am OT.
>

Would that I could. This is getting compulsive.

Jim Starkey