Subject Re: Grant priviliges - another question.
Author Adam
--- In firebird-support@yahoogroups.com, "Jacek Borowski"
<jacek@t...> wrote:
> >> Is there any possibility to alter table by user who is not admin
nor
> > owner
> >> of this table ?
> >
> > No.
> > But then again you don't really want to try this when anyone else
is
> > connected either.
>
> But, why ?

While Firebird has MVCC on table records, it does not have any such
concept on table meta data. If you have are in the middle of a
transaction and all of a sudden the table has more or fewer fields,
or there is a new constraint or something, then it is really going to
confuse things. Firebird will NOT let you change the meta data of a
table that is "in use", in fact you will get such a message if you
try.


> Many times I need to add some extra calculated fields or additional
fields
> to store additional informations. I need to do it when the first
user with
> new software connect to database. Only this new software can
understand
> changes. Changes are important for future use, but software will be
upgraded
> for all users in few days. Every user with new software can see
changes and
> can update database with new informations, others peoples works
without
> problems with old software.

In your case, you could quite easily create a program that shut down
the particular fdb, connected as the owner, make any metadata changes
required, then turn the fdb back on.

From experience, I also wouldn't be so confident that old programs
will work with new database structures, especially if you do not
declare every field of a table in an insert statement etc.

Adam