|Subject||Re: [ib-support] First keyword in Firebird not in InterBase|
> Also looks like I will have to stick with InterBase for a while, andJust a quick note..
> figure out how to modify everything without interruption in service.
If you have some sort of facility to disallow users to login to the database
that your program uses (I can't imagine a program that doesn't allow for
this, frankly), it's quite simple to make all of the changes, without too
much of an interruption in service.
For instance, firstnames....
alter table person add firstname varchar(15);
update table person set firstname_temp = first;
alter table person drop first;
Wash, Rinse, Repeat.
Technically, the database doesn't need to be in a closed state, however to
keep users from randomly seeing "General SQL Error" messages, it's generally
a good thing.
Also, if you haven't thought about some sort of automatic executable updater
(in the vein of Windows Update, anti-virus updates, etc), you really should.
They're trivial to write, and turn out to be vastly useful. They would make
half of the issue (Rolling out new exe's) solve itself, essentially. If you
really wanted to be nifty about it, you could include an updater inside of
your exe that checks some sort of version information in the database, and
updates stuff accordingly, if it needs to be updated. Therefore, the first
person to run the new exe is the person that modifies the database
(automatically), and all subsequent people are good to go.
We ran into the field naming issue when we were moving from our old
Pervasive system to Interbase. We had things like columns named COLUMN and
SEQUENCE etc. What we did is just add an "fn" on the beginning of the
column name, so they turn into FNCOLUMN and FNSEQUENCE. Two extra letters
hasn't killed anyone yet, and it's always nice to be able to say "Yeah, that
eff'n column was bad" in front of your boss.
If you're thinking of sticking with Interbase, and staying up to date with
it in terms of buying the releases, I'd be willing to bet you're going to
run into the same issue at some point. If you're thinking of sticking with
Interbase, and staying with the open source 6.0.. umm.. Good luck.