FB 5 Migrationguide
FB 5 Migrationguide
0 in Windows
This behavior can play a cruel joke on you. The thing is that the 64-bit installer
places the 32-bit library fbclient.dll in the folder $(fbroot)/WOW64. If you want to
use the library from this directory, you may get the following error message
In this case, the 32-bit fbclient.dll tried to load the 64-bit ChaCha plugin.
To fix this error, just put the file firebird.conf in the folder $(fbroot)/WOW64.
The library fbclient.dll, as well as other files of the client library, must be located either next to
the application, or in one of the directories where the search is performed, for example added to
PATH or the system directory for placing public libraries (system32 or SysWOW64).
Important
Placing the client library in PATH may interfere with other applications that require
To deploy the Firebird client library in the Windows system directory, use the command
Important
The instclient utility does not copy any files to the system directory except
fbclient.dll.
12
Chapter 1. Manual installation of Firebird 5.0 in Windows
embedded set of minimal size, then the structure of files and directories for Firebird 5.0 embedded
is as follows:
• intl
◦ fbintl.conf
◦ fbintl.dll
• plugins
◦ engine13.dll
• firebird.conf
• icudt63l.dat
• fbclient.dll
• ib_util.dll
• icudt63.dll
• icuin63.dll
• icuuc63.dll
• msvcp140.dll
• vcruntime140.dll
• vcruntime140_1.dll
• firebird.msg
If necessary, you can also copy the executable files of the utilities fbsvcmgr.exe, fbtracemgr.exe,
gbak.exe, gfix.exe, gstat.exe, isql.exe, nbackup.exe. If you are going to use gbak with the -zip switch,
then you will also need the library zlib1.dll.
Note
For those who are migrating from Firebird 2.5, you should consider 2 points:
• Instead of a single library fbembed.dll, several files are required, and the file
fbclient.dll cannot be renamed. Access components must use the library
fbclient.dll as the entry point.
• In the configuration file firebird.conf, you should change the value of the
parameter ServerMode to SuperClassic or Classic so that on one computer you
can connect to the same database from different applications using embedded
(behavior of Firebird 2.5 embedded by default).
13
Chapter 2. Converting the database to the new format
To detect SQL language compatibility issues for database objects, the following method is
recommended. Extract the metadata of the database into a script on the old version of Firebird.
Uncomment the CREATE DATABASE statement inside the script, make the necessary changes, and
try to create a new database from the script in Firebird 5.0:
where, the -i key is the input file of the script; the -o key is the output file of messages; the -m key
makes isql output error messages to the output message file.
Next, look at the file error.log for errors, and if they are found, change the metadata in the original
database. Repeat the algorithm described above until all errors are eliminated. After that, you can
safely do backup/restore.
Next, we will list some of the most common compatibility issues at the SQL level, which you can fix
before moving to the new ODS. You can read the full list of incompatibilities in Release Notes 5.0 in
the chapter "Compatibility Issues". When migrating from 3.0, you should also familiarize yourself
with the chapter of the same name in Release Notes 4.0, and when migrating from 2.5 - Release
Notes 3.0.
Check your database for new reserved words in identifiers, columns, and variables. In the first SQL
dialect, such words cannot be used at all (you will have to rename them), in the third - they can be
used, but must be enclosed in double quotes.
You can find the list of new keywords and reserved words in the Release Notes 3.0 and 4.0 in the
chapter "Reserved Words and Changes". Keywords can be used as identifiers, although this is not
recommended.
14