Subject | Re: [IB-Architect] SQL Statement Dependance Mapping |
---|---|
Author | Ann Harrison |
Post date | 2000-06-30T20:34:30Z |
At 01:25 PM 6/30/00 -0400, Dalton Calford wrote:
design intent was not to have a ddl at all. Tables are created
with an insert into rdb$relations, domains with an insert into
rdb$fields, columns with an insert into rdb$relation_fields. Of
course, it's not entirely that simple - there's a lot going on
behind those inserts - but that's the interface.
Then we discovered exactly how hard it is to get all the pieces
right. Tables and fields are easy enough, but when you get to
the bits that have to be stored as BLR (e.g. views, constraints,
triggers, procedures) - not that easy.
you have a lex/par/gen that turns SQL into BLR. A compile in
the middle helps if you want to generate good BLR.
it's buggy.
sort of thing - either you get all of it or you don't
get it at all.
Ann
>Could we get the long and the short of it please?It is, in fact, long. InterBase's system tables are active - the
design intent was not to have a ddl at all. Tables are created
with an insert into rdb$relations, domains with an insert into
rdb$fields, columns with an insert into rdb$relation_fields. Of
course, it's not entirely that simple - there's a lot going on
behind those inserts - but that's the interface.
Then we discovered exactly how hard it is to get all the pieces
right. Tables and fields are easy enough, but when you get to
the bits that have to be stored as BLR (e.g. views, constraints,
triggers, procedures) - not that easy.
>What SQL objects can we safely create and or modify by simply using DMLAnything, as long as you never make a mistake, and as long as
>statements against the system tables?
you have a lex/par/gen that turns SQL into BLR. A compile in
the middle helps if you want to generate good BLR.
>There are system triggers that don't have the source code included, isLet me grunge around and see if I can find it. One warning -
>it possible for that source (as it is more of macro format vs C source)
>to be released before the rest of the Interbase code?
it's buggy.
>Is there a simple reference guide to BLR (maybe the bnf or ebnf of theA simple reference isn't going to help. It's a gestalt
>blr parser?)
sort of thing - either you get all of it or you don't
get it at all.
Ann