Subject | Re: [firebird-support] Changing Database Dialects |
---|---|
Author | Helen Borrie |
Post date | 2006-04-24T03:48:44Z |
At 10:14 AM 24/04/2006, you wrote:
default. The only way to create a D1 database would be to
intentionally set isql's (or another tool's) client dialect to 1 (SET
SQL DIALECT 1) before running the CREATE DATABASE statement.
database. However, if you really do have a D1 database, that doesn't
convert your database to D3. In a "real" D1 database, some data
types would have bee stored differently to the way they are stored in
a D3 database. Merely changing the dialect attribute doesn't update any data.
In short, the safe solution is to create a new, empty D3 database and
pump in the data from the D1 database. To get the empty database,
you can gbak the D1 database using the -m[etadata] switch, restore
that, use gfix to change the dialect of the empty db, then pump in
the data from the D1 database.
./heLen
>HiThat seems weird. Firebird 1.5 creates a D3 database by
>
>Upon reading more about dialects and reviewing the databases i have
>i've discovered that i have several DB's that are of Dialect 1. They
>are new databases created with Firebird 1.5 just not with the correct dialect.
default. The only way to create a D1 database would be to
intentionally set isql's (or another tool's) client dialect to 1 (SET
SQL DIALECT 1) before running the CREATE DATABASE statement.
>Is it possible to simply change the dialect on these databases to 3Well, you can use gfix to change the dialect *attribute* of the
>or am i inviting serious trouble?
database. However, if you really do have a D1 database, that doesn't
convert your database to D3. In a "real" D1 database, some data
types would have bee stored differently to the way they are stored in
a D3 database. Merely changing the dialect attribute doesn't update any data.
In short, the safe solution is to create a new, empty D3 database and
pump in the data from the D1 database. To get the empty database,
you can gbak the D1 database using the -m[etadata] switch, restore
that, use gfix to change the dialect of the empty db, then pump in
the data from the D1 database.
./heLen