Subject | Re: Validate Schema |
---|---|
Author | Adam |
Post date | 2005-12-20T05:38:37Z |
I use the following approach that has worked quite well.
The database contains a version table that stores the schema update
number and the time the update was made. Each script is numbered
sequentially. When the database is being upgraded, the latest installed
update script is identified from this table, and all scripts between
the following script and the last script are run.
There are numerous tools that can do a database structure comparison
and even generate a DDL script to synchronise it. While this approach
is probably safer, you would need to check it on a database by database
level which is too slow when you have a couple of hundred installs.
Adam
--- In firebird-support@yahoogroups.com, "d_sameer" <d_sameer@y...>
wrote:
The database contains a version table that stores the schema update
number and the time the update was made. Each script is numbered
sequentially. When the database is being upgraded, the latest installed
update script is identified from this table, and all scripts between
the following script and the last script are run.
There are numerous tools that can do a database structure comparison
and even generate a DDL script to synchronise it. While this approach
is probably safer, you would need to check it on a database by database
level which is too slow when you have a couple of hundred installs.
Adam
--- In firebird-support@yahoogroups.com, "d_sameer" <d_sameer@y...>
wrote:
>
> Hello All:
> Iam using the embedded version of the firebird for a smart client. To
> do schema updates, I could use DDL like "alter table...", however many
> a times I might have to apply more than one update to a given client
> just because they fell behind on updates. What types of design pattern
> would you recommend where in I could do a schema validation and then
> an update. Something similar to ADOX in the old com model
> <TableDefs/QueryDefs>. I guess GetSchema would achive at least
> partially what I would want to do,
>
> Thanks
> sd
>