Subject Re: [firebird-support] Re: Creating database through a script and later updating it
Author Venus Software Operations
Hi George

Thanks for responding.

At 01:27 am 31/01/2004, you wrote:
>I have a lot of little databases that need to be kept up to date. Doing
>it by hand is a really bad idea.

Agreed, that was precisely the reason I had posted this.

>I store all of the SQL data definition code in text files,

What utility do you use? I have successfully tried creating the script
using Marathon. I also tried creating the script using command line tools
by but the script it generated was not compatible with
Database Comparer by Clever Components. Do you know of any other command
line tools for creation and comparison of scripts? I am still in the
research phase of converting to FireBird, so how much I can automate is my

>one text
>file per table, and these statements are added with a version number.
>Each database has a version table that keeps track of the version.
>When the database is attached to by the client, the versions are
>compared, and if necessary the newer commands are run, after which the
>database version number is updated.

using a utility? or using API?

>The text files are compiled as a resource, and this resource is
>included in the exe. Wherever the app goes, the database can be

This is (similarly) what I do for VFP databases. As I program in VFP I can
check for modified structure and converting the existing data to the newer
structures all automatically. Even the distribution version (using
GenDBCx) of the VFP databases is automated. So all I had to do was create
a distribution version, generate an exe, compile the setup and as soon as
the app is run for the first time after installation/reinstallation the
database is created/updated and the data converted. Now coming in the
FireBird realm this ease I am missing.

>The only thing I haven't managed with straight SQL is creating a new
>user (help?), but I could do that with Delphi if I needed to.

There is a FireBird API for VFP on the downloads
section, if that helps. I haven't been able to research it in depth.

>It works great, and has been the backbone of my app for more than two

Thanks for your insight.

Bhavbhuti Nathwani
Softwares for Indian Businesses at:

Please note: We reserve complete rights for policy changes in the future
and the same will be applicable immediately as and when made. Attachments
may get corrupted before reaching you, in such a situation please let us
know and we will resend you the same at the earliest. We do not take any
responsibility for data loss of any type and kind. Data safety remains the
sole the responsibility of the users of our softwares.

Internet email confidentiality:

This message may contain information that may be privileged or
confidential. If you are not the addressee nor are you responsible for the
delivery of the message to the addressee indicated in this email, then you
may not copy or deliver this email to anyone and you should notify the
sender by reply email and then destroy this message.

Please reply email immediately to this message with REMOVE in the subject,
if you or your employer do not consent to email of this kind.

Opinions, conclusions and other information in this message that do not
relate to the official business of my firm shall be understood as neither
given nor endorsed by my company.


Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (
Version: 6.0.573 / Virus Database: 363 - Release Date: 28/01/2004

[Non-text portions of this message have been removed]