IBExpert User database

The complete IBExpert configuration and work is stored in the IBExpert User Database. The user database should always be used for your main storage for security reasons. It is also possible to store SQL scripts in the IBExpert User Database. These scripts can then be viewed and opened using the Scripts/Blocks page in the DB Explorer.

If you have not specified and registered your IBExpert User database, you will receive the following error message, the first time you start IBExpert:

By starting IBExpert for a second time, IBExpert automatically creates a User Database in the user\app directory.

If you do not specify the name and location of the IBExpert user database yourself, the default ibexpert.udb will be used for storage of all settings, which can be found here: \HK-Software\IBExpert\ibexpert.udb. Please note, this area is user-dependent and even if several users work on one machine, each user has their own file.

You can of course specify the location of the User Database yourself. The simplest and quickest way to do this is using the supplied Firebird embedded server.

Go to the IBExpert menu, Options / Environment Options / User Database:

The following information is required in order to create a new user database. After checking the Allow User Database checkbox the following fields need to be completed:

If you do not specify the location for your user database here, the default location \HK-Software\IBExpert\ibexpert.udb will be used. This location is however user-dependent. We recommend that you specify a non-user-dependent directory and path for your user database using this menu function. If you need to - either to another user on the same machine, or another machine, you simply specify the directory and path here, or copy the IBExpert.udb to the new machine.

Since IBExpert version 2020.05.10 it is possible to use environment variables in a database path and client library. To use the value of an environment variable as a part of a path enclose it between the percent chars (%):

\somedata\ibedb.fdb

There is an IBE_APPDIR environment variable that contains the location of the IBExpert.exe directory.

The user database can then be created and initialized using the Create and Init User Database button, and then registered using the IBExpert Database menu item, Register Database. From now on you should no longer see the error message when starting IBExpert.

You can also set the User Database properties from an INI-file.

If you wish to store the IBExpert User Database on a network drive, we recommend the following procedure: move the client library file, fbembed.dll, from the IBExpert subdirectory, \IBEUDB to a location of your own choice (but without the localhost: prefix), and rename the database with a valid name of your choice. The User Database then uses Firebird's Embedded Server.

Please also refer to the IBEBlock article: Performing a daily backup of the IBExpert User Database.

Detecting and moving your user database

We are often asked, how all IBExpert settings, such as database registrations, can be ported when installing IBExpert on another computer.

If you have specified the location and name of your user database in Environment Options / User Database, you can move it from here to the new location.

If you have not specified a location yourself: by default, the user database file can always be found in the folder: \HK-Software\IBExpert\ibexpert.udb. This area is user-dependent and even if several users work on one machine, each user has their own file.

Search for the file ibexpert.udb on your computer. If it is found, either copy it to the path mentioned above or create a user-independent path, e.g. c:\db\ibexpert.udb.

Restart IBExpert and enter the selected path into the User Database and restart again. Following this process all entries from the previous User Database should be visible again.

Setting User Database properties from an INI-file

IBExpert looks for IBExpert.ini file in the current directory. If there is no IBExpert.ini file in this directory - the user profile directory will be searched too.

If the IBExpert.ini file is found, IBExpert will read the “UserDB” section, if it exists. Four parameters are possible in this section:

Only the UDBConnectString parameter is mandatory. If this parameter is found IBExpert will connect to the specified database instead of getting the User Database connection properties from the Windows Registry.

Example of the IBExpert.ini file:

[UserDB]
UDBConnectString=USERDB.FDB
UDBUserName=SYSDBA
UDBPassword=masterkey
UDBClientLib=..\Firebird\fbembed.dll

back to top of page

ibexpert.stg

Please note that since version 2011.12.01 IBExpert uses the Firebird database and Firebird Embedded 2.5 to store IBExpert data (registered databases, query histories etc.) by default. In previous versions by default IBExpert stored this data in the IBExpert.stg file and the user was able to change this manually in the User Database. Working with IBExpert.stg is still possible (for example, if you disable the User Database manually) but you will get a warning every time you start IBExpert (refer to image at top of page), and we will not support this method in the future.

Pre-2011.12.01: If you wish to copy the specifications for a database already registered in one IBExpert version over to another IBExpert version, simply copy the file: \Documents and Settings\<user>\Application Data\HK-Software\IBExpert\IBExpert.stg. The preferable solution is however to change to the IBExpert User Database.