IBExpert Distribution OEM Edition

The IBExpert Distribution OEM Edition allows unlimited distribution of the purchased IBExpert IDE software file or IBExpert scripts with your application for a period of 5 years.

You will receive an IBExpert.exe, IBEScript.exe and/or IBEScript.dll file created exclusively for your company, which you may use on any of your customers' computers on which your software is running, but also on any computer belonging to your group of companies (purchase, rental, leasing). However, distribution beyond this is explicitly prohibited. Employees who no longer work in your company may no longer use this software and may not continue to use it. You are responsible for ensuring that the OEM is only used in accordance with the conditions agreed between IBExpert and you (IBExpert contractual partner) and you must ensure that no arbitrarily available tool is distributed for activation. The OEM Edition may continue to be used on computers, where it has already been installed, for an unlimited period of time. For new installations however, a new IBExpert Distribution OEM must be purchased for the respective module after 5 years.

Updates are not included and must be commissioned additionally.

The OEM Update Subscription provides you access to all updates for 60 months (12 months on request).

The OEM Update Subscription cannot be ordered retrospectively, but only as an extension when directly ordering an IBExpert Distribution OEM Edition and is charged in advance.

Prices/Modules

IBExpert Distribution OEM Edition IDE

Software file: IBExpert.exe EUR 12,650
OEM Update Subscription 60 months: EUR 15,850
OEM Update Subscription per 12 months prepaid: EUR 4,175

IBExpert Distribution OEM Edition Script

Software file: IBEScript.exe: EUR 12,650
OEM Update Subscription 60 months: EUR 15,850
OEM Update Subscription per 12 months prepaid: EUR 4,175

IBExpert Distribution OEM Edition DLL

Software file: IBEScript.dll: EUR 12,650
OEM Update Subscription 60 months: EUR 15,850
OEM Update Subscription per 12 months prepaid: EUR 4,175

If no OEM Update Subscription is ordered as an extension to the IBExpert Distribution OEM Edition or the annual subscription period has been interrupted, the OEM Update Subscription cannot be ordered retrospectively.

We then charge a flat-rate service fee of currently EUR 4,175 per update for the respective OEM module.

The registration code (a character string to be calculated on the basis of the computer) does not require any internet access, portal access or access from third parties.

The IBExpert Distribution OEM Edition includes an individualised DLL or EXE with the name of the IBExpert contract partner.

On each computer on which an OEM DLL or EXE is to be used, the OEM licensee must calculate a registry entry in accordance with our specifications and save it in the HKCU area before using the OEM EXE or DLL.

Before using the OEM EXE or DLL, the OEM licensee must save it in the registry in the HKCU area.

The registration entry is calculated and checked individually, based on the local computer name.

Hardware changes or deployment on virtual machines do not change the code if the selected computer name does not change in the process.

The registration entry must be generated by the end customer's licensed software and not by separate software that can also be used without the correct licensing.

You will receive a source code sample as an example for this procedure as part of the OEM package.


IBExpert Server Tools

(German-language version below)

The IBExpert Server Tools include IBEScript exe and dll, hkSCC.exe, the IBExpert Backup/Restore Scheduler and the IBExpert Encryption Plugin on Win32/Win64. The IBExpert Server Tools can also be deployed on virtual machines or in a cloud infrastructure.

  • Hardware-independent activation, i.e. if the virtual machine is transferred to another host, the script engine will continue to run without re-registration.
  • An unlimited right to use the software activation on the registered machine.
  • Includes: IBEScript.exe, IBEScript.dll, hkSCC.exe, the IBExpert Backup/Restore Scheduler and the IBExpert Encryption Plugin on Win32/Win64.
  • The Server Tools must be downloaded and installed within 12 months, after we have activated the IBExpert Server Tools in your customer account in the IBExpert Download Center. Please pay attention to this period, especially if you have purchased a Server Tools package with multiple activations.
  • Transfer to another (physical or virtual) machine is not possible.
  • In virtual environments only 1 instance may be active per IBExpert Server Tools activation.
  • 1 IBExpert Server Tools activation is required for each copy of the virtual machine on which the Script engine is to be used.
  • The Server Tools include a single one-time download. Further unlock codes are not available following installation of the Server Tools.
  • You may also purchase the IBExpert Server Tools from us and resell them on to your end customer or pass them on free of charge, if they are to be used on your customer's hardware. All the above rules remain applicable.

Please note that we cannot offer any software subscription services as the Server Tools include only a singular activation.

The IBExpert Server Tools do not include the IBExpert IDE.

All functionalities of the IBEBlock scripting language, for example, metadata and data comparison, multiple database access, etc. are also available. Details of the individual tools can be found here.

Please always use the current IBExpert Server Tools version, which is available in the IBExpert Download Center.




IBExpert Server Tools

Die IBExpert Server Tools enthalten die IBEScript exe und dll, hkSCC.exe, den IBExpert Backup/Restore Scheduler, und das IBExpert Encryption Plugin auf Win32/Win64. Die IBExpert Server Tools können auch auf virtuelle Maschinen oder in einer Cloud-Infrastruktur eingesetzt werden.

  • Hardware-unabhängige Freischaltung, d.h. wenn die virtuelle Maschine auf einen anderen Host übertragen wird, läuft die Script Engine ohne erneute Registrierung weiter.
  • Ein zeitlich unbegrenztes Nutzungsrecht der Software Installation auf der registrierten Maschine.
  • Beinhaltet: IBEScript.exe, IBEScript.dll, hkSCC.exe, den IBExpert Backup/Restore Scheduler und das IBExpert Encryption Plugin für für Win32/Win64.
  • Nachdem wir die IBExpert Server Tools auf Ihrem Kundenkonto im IBExpert Download Center freigeschaltet haben, müssen die Server Tools innerhalb von 12 Monaten heruntergeladen und installiert werden. Bitte achten Sie auf diesen Zeitraum, insbesondere, wenn Sie ein Server Tools Paket mit mehreren Freischaltungen erworben haben.
  • Eine Übertragung auf eine andere (physische oder virtuelle) Maschine ist nicht möglich.
  • In virtuellen Umgebungen darf pro Aktivierung der IBExpert Server Tools nur 1 Instanz aktiv sein.
  • Für alle Kopien der virtuellen Maschine, auf der die Script Engine benutzt werden soll, ist jeweils 1 IBExpert Server Tools Installation erforderlich.
  • Die Server Tools beinhalten je 1 einmaligen Download. Weitere Freischaltcodes stehen nach Installation der Server Tools nicht zur Verfügung.
  • Sie dürfen auch die IBExpert Server Tools bei uns einkaufen und an Ihren Endkunden weiterverkaufen oder kostenlos weitergeben, wenn diese auf der Hardware Ihres Kunden eingesetzt werden soll. Alle oben aufgeführten Regeln gelten weiterhin.

Bitte beachten Sie, dass wir Ihnen keinen Software Subscriptionsservice anbieten können, da die Server Tools eine einmalige Installation beinhalten.

Die IBExpert Server Tools enthalten keine IBExpert IDE.

Alle Funktionalitäten in der IBEBlock Skriptsprache, wie beispielsweise der Metadaten- oder Datenvergleich, mehrfacher Datenbankzugriff, etc. sind verfügbar. Weitere Details zu den Server Tools Features finden Sie hier.

Verwenden Sie bitte immer die aktuelle IBExpert Server Tools Version, die Ihnen im IBExpert Download Center zur Verfügung steht. 


IBExpert Day Edition

(German-language version below)

The IBExpert Day Edition contains all the features of the IBExpert IDE, e.g. debugger, performance analysis and much more.

IBExpert can be used on registered computers for 24 hours following activation. After the 24 hour period IBExpert will no longer start on this computer, but can be activated again.

Use IBExpert wherever you or your employees work

In the home office
For customer support
On customer computers, e.g. as a supplement to the Company Year Edition

The automatic termination after 24 hours minimizes the risk of running an unlicensed product on customer machines.

Or for other tasks

Benchmark tests
Training purposes
Tests

Also as a cost-effective introduction

For your trainees and interns
And of course also for testing for new customers

And also at hand in case of emergency

For short-term use on another computer, e.g. if you cannot generate a removal code when moving to another computer, or your computer is broken.

IBExpert Day Edition Packages

Day Edition 100 activations, valid 12 months 155 Euro
Day Edition 500 activations, valid 12 months 285 Euro
Day Edition 1,000 activations, valid 12 months 445 Euro
Day Edition 5,000 activations, valid 12 months 1,995 Euro

Please register in the IBExpert Download Center for this product with a valid e-mail address. If possible, use a use a company address such as support@companyx.com, ibexpertday@computerenterprise.com or similar.

The software activations are made available on your user account in the IBExpert Download Center for a period of 12 months.

Afterwards any unused activations will automatically expire. To prevent this, you can purchase a new IBExpert Day Edition package before the expiry date, so that unused activations are credited for a further 12 months.

The IBExpert Day Edition is the ideal supplement to all IBExpert full versions, ready for use on all computers at any time.

The IBExpert Day Edition can also be run on Linux/Wine.

You can download the latest IBExpert IDE setup file from the IBExpert Download Center and distribute it with your software product. If you wish to work with IBExpert on your customer servers, activate one of your Day Editions with your e-mail address/password combination to start IBExpert.

You can request a free package with 5 activations for 10 days for testing purposes here: register@ibexpert.biz




IBExpert Day Edition

Die IBExpert Day Edition enthält alle Funktionen der IBExpert IDE, z.B. Debugger, Performanceanalyse u.v.m.

IBExpert kann nach der Freischaltung 24 Stunden auf dem Computer benutzt werden. Nach Ablauf von 24 Stunden wird IBExpert auf diesem Computer nicht mehr starten, kann aber erneut wieder freigeschaltet werden.

Benutzen Sie IBExpert überall dort, wo Sie oder Ihre Mitarbeiter arbeiten:

Im Office
Im Homeoffice
Im Kundensupport
Auf Kundenrechnern, z.B. als Ergänzung zur Company Year Edition

Durch das automatische Beenden nach 24 Stunden minimiert sich das Risiko, ein nicht lizenziertes Produkt auf Kundenrechnern zu betreiben

Oder für andere Aufgaben

Für Benchmarktests
Für Schulungszwecke
Für Tests

Auch als günstiger Einstieg

Für Ihre Auszubildenden und Praktikanten
Und natürlich auch zum Testen für Neukunden

Und auch im Notfall zur Hand

Für den kurzfristigen Einsatz auf einem anderen Computer, z.B., wenn Sie keinen Removal Code beim Umzug auf einen anderen Computer erzeugen können, oder Ihr Computer defekt ist.

IBExpert Day Edition Pakete

Day Edition 100 Aktivierungen, Laufzeit 12 Monate 155 Euro
Day Edition 500 Aktivierungen, Laufzeit 12 Monate 285 Euro
Day Edition 1000 Aktivierungen, Laufzeit 12 Monate 445 Euro
Day Edition 5000 Aktivierungen, Laufzeit 12 Monate 1995 Euro

Bitte registrieren Sie sich im IBExpert Download Center für dieses Produkt mit einer gültigen E-Mail-Adresse. Verwenden Sie nach Möglichkeit eine Firmenadresse wie z.B.support@companyx.com, ibexpertday@computerenterprise.de oder ähnliches.

Die Freischaltung erfolgt auf Ihrem User Account im IBExpert Download Center für den Zeitraum von 12 Monaten.

Nicht angeforderten Aktivierungen verfallen danach automatisch. Um dieses zu verhindern, können Sie rechtzeitig vor Ablauf ein neues IBExpert Day Edition Paket erwerben, damit werden nicht angeforderte Aktivierungen für die nächsten 12 Monate gutgeschrieben.

Die IBExpert Day Edition ist die ideale Ergänzung zu allen IBExpert Vollversionen, jederzeit auf allen Computern einsatzbereit.

Die IBExpert Day Edition ist auch mit Linux/Wine lauffähig.

Sie können die aktuelle IBExpert IDE-Setup-Datei im IBExpert Download Center herunterladen und mit Ihrem Software-Produkt verteilen. Wenn Sie mit IBExpert auf Ihren Kundenservern arbeiten möchten, aktivieren Sie eine Ihrer Day Editions mit Ihrer E-Mail-Adresse/Passwort Kombination, um IBExpert zu starten.

Ein kostenloses Paket mit 5 Freischaltungen für 10 Tage zum Testen können Sie hier anfragen: sales@ibexpert.biz.


IBExpert Developer Studio Edition

(German-language version below)

The IBExpert Developer Studio Edition contains a IBExpert Developer Studio Full Version with a 12 month software subscription.

The IBExpert Software Subscription is valid for 12 months and includes:

An unlimited right to use the software activation on the registered hardware.
Access to the IBExpert Download Center to download and activate IBExpert.
Access to the IBExpert Download Center to download new IBExpert versions.
Machine-bound activation codes for the registered hardware upon submission of the Removal Code.

The software subscription can be renewed at any time within 12 months, our price list can be found here.

If you wish to renew your IBExpert Software Subscription later, after more than 12 months, please note that the price for renewal will then correspond to the prices of the respective IBExpert Developer Studio Software Subscription after expiry of more than 12 months.

The IBExpert Developer Studio Edition is machine-bound and works on physical servers/desktops/laptops and VMs, as long as the hardware does not change.
In a virtual environment, which does not always run on the same hardware, the use of an IBExpert Company Year, Enterprise Server Year, or Distribution OEM is necessary to avoid problems such as machine locks.
Furthermore, we also recommend the use of an IBExpert Year Edition to all customers who are unable to submit removal codes.

One activation is required per computer and per user. If a single computer has multiple users, the number of IBExpert Developer Studio Editions must be ordered for the total number of users per machine.
As long as your software subscription is valid, further activations can be added.
If you would like to add further software activations to your IBExpert User Account, please ask us for a quote sales@ibexpert.biz.

Please register in the IBExpert Download Center for this product with a valid e-mail address. If possible, use a use a company address such as ibexpert@companyx.com, info@computerenterprise.co.uk or similar.

Our development is based on the constant and essential development of our IBExpert products to adapt to the Firebird database.
Current IBExpert features here: What´s New

If you have any questions, please send us your e-mail to sales@ibexpert.biz or call us: +49 (0) 4407 3148770. 




IBExpert Developer Studio Edition

Die IBExpert Developer Studio Edition enthält eine IBExpert Developer Studio Vollversion mit einer Software Subscription von 12 Monaten.

Die IBExpert Software Subscription ist 12 Monate gültig und enthält:

Ein zeitlich unbegrenztes Nutzungsrecht der Software Aktivierung auf der registrierten Hardware.
Zugang zum IBExpert Download Center, um IBExpert zu downloaden und zu aktivieren.
Zugang zum IBExpert Download Center zum Download neuer IBExpert Versionen.
Maschinengebundene Freischaltcodes für die registrierte Hardware bei Einreichung des Removal Codes.

Die Software Subscription kann jederzeit innerhalb von 12 Monaten erneuert werden, unsere Preisliste finden Sie hier.

Wenn Sie Ihre IBExpert Software Subscription später, nach Ablauf von mehr als 12 Monaten erneuern möchten, beachten Sie bitte, dass der Preis für die Erneuerung dieser dann den Preisen der jeweiligen IBExpert Developer Studio Software Subscription nach Ablauf von mehr als 12 Monaten entsprechen.

Die IBExpert Developer Studio Edition ist maschinengebunden und funktioniert auf physischen Servern/Desktops/Laptops und VMs, wenn sich die Hardware nicht ändert.
In einer virtuellen Umgebung, die nicht immer auf der gleichen Hardware läuft, ist der Einsatz einer IBExpert Company Year, Enterprise Server Year, Distribution OEM notwendig, damit es nicht zu Problemen, wie z.B. Maschinensperrungen, kommt.
Desweiteren empfehlen wir den Einsatz einer IBExpert Year Edition auch allen Kunden, die keine Removal Codes einreichen können.

Pro Hardware und pro Benutzer ist eine Aktivierung erforderlich. Wenn eine Hardware mehrere Benutzer hat, muss die IBExpert Developer Studio Edition für die Gesamtzahl aller Benutzer pro Hardware bestellt werden.
Solange Ihre Software Subscription gültig ist, können weitere Aktivierungen hinzugefügt werden.
Wenn Sie Ihren IBExpert User Account um weitere Software Aktivierungen aufstocken möchten, fragen Sie uns bitte nach einem Angebot sales@ibexpert.biz.

Bitte registrieren Sie sich im IBExpert Download Center für dieses Produkt mit einer gültigen E-Mail-Adresse. Verwenden Sie nach Möglichkeit eine Firmenadresse wie z.B. ibexpert@companyx.com, info@computerenterprise.co.uk oder ähnliches.

Unsere Entwicklung basiert auf der konstanten und notwendigen Erweiterung unserer IBExpert Produkte mit einer Anpassung an die Firebird Datenbank.
Aktuelle IBExpert Features hier: What´s New

Wenn Sie Fragen haben, senden Sie uns Ihre E-Mail an sales@ibexpert.biz oder rufen Sie uns an: +49 (0) 4407 3148770. 


IBExpert Benchmark

The current version was released in January 2024.

The Net Test executes 2000 inserts to a table with 100 columns and sends all params from client to the server in individual params, so this function will create a few hundred thousand very small TCP IP packages over the network and the total time is measured by how many operations were done within each second.

A good value on fast networks should have around >=400 IOPs. If it is much slower, you should ask your network support to check the speed of components used.

It is not part of the calculated percentage result values, and also the time it takes is not used there, since these result values use minimal network traffic to measure the server speed and not the network speed.

Compare your server's performance to our IFS servers!

How do you measure the performance of your own server or your clients'? Have you ever tried to compare the database speed of your Firebird server with new server hardware? Is a XEON Machine better than an Opteron? What improvements can you expect from fast SAS hard disks, RAID controllers or Enterprise SSDs?

This simple but effective tool gives you a reference benchmark, based on our recommended IFS Servers. Using IBExpert Benchmark you can generate and compare a reproducible speed index for your Firebird Server hardware. On average, our IFS servers with Firebird are 5 to 10 times faster than the server or virtual machines that our customers have previously used.

Benchmark (extended) results using Firebird 4.0 on an IFSML Server

To perform the IBExpert Benchmark at your customers and also take advantage of the extended and XXL benchmarks, you can use either the IBExpert Developer Studio customer version or the IBExpert Day Edition. To perform standard benchmarks locally, you may use our Free IBExpert Benchmark Tool.


Free IBExpert Benchmark Tool

You can use the IBExpert Benchmark Tool free of charge on any Windows computer. This limited special version allows standard benchmarks to be performed locally and includes Firebird 2.5, 3.0 and 4.0 versions, executed in application mode, so you do not need to install Firebird on the server to be tested.

The Benchmark Tool is quick and easy to use: download it here: https://ibexpert.net/benchmark/setup_benchmark.exe, install it on the drive that you want to test.

Since September 2021 the benchmark now uses the latest Firebird versions 2.5.9 and 3.0.7, and can also use Firebird 4.0.0 with the 32K page size. IBExpert Benchmark 2.0 was released on 17th November 2021.

The Benchmark Tool tests 10 parallel running threads.

Running the benchmark will not overwrite any programs already in use, nor does it install anything, so you can safely run the benchmark on your server. The IBExpert Benchmark Tool does not use an existing Firebird installation and will only test the drive on which it is installed.

Select the Firebird version you wish to use for your benchmark in the left-hand panel: Firebird 2.5 Superserver, Firebird 3.0 Superserver or Firebird 4.0 Superserver. The selection in this free version has been limited so that even users with no Firebird knowledge or experience can easily perform this quick benchmark test.

The right-hand window in this free version is read-only. (In the paid version you can enter any and all of this information, e.g. define your own connection string and client library file).

Start the benchmark by clicking Start Benchmark in the bottom left-hand corner.

Important: you will need to install and run this as Admin.

Note: Should you receive an error message, please download and install the current version.

The benchmark process and results are explained below under How does it work?

If you would like a more flexible version of our Benchmark, which allows you to change various test options, test multiple drives, various Firebird instances or even perform a benchmark on a Linux operating system or remote servers, you should use the following Benchmark, included in all IBExpert customer version IDEs.


IBExpert Developer Studio Benchmark

This version offers standard, extended and XXL benchmarks, which can be performed on the Firebird 2.5 Superserver, Classic server, Superclassic server or Firebird 3.0 and Firebird 4.0 32- or 64-bit, Windows, Linux etc. either locally or remote. The Benchmark software is implemented as a 32-bit Windows software, but it can connect to any remote Firebird installation.

If you wish to collect the results for comparison with different hard and software combinations, enter a brief description of the configuration to be tested, along with the recipient email address for the statistic report.

Benchmark (extended) results using Firebird 4.0 on an IFSML Server

Then add the required database connection information - you need to set a new path for the newly generated database; if you specify the path of an existing database, you will receive a warning message:

Specify the Firebird client, as well as the user name and password (the standard SYSDBA and masterkey). Finally click Start benchmark to run the benchmark test.

IBExpert now creates the demo database, which always follows the same guidelines. It then executes the INITALL procedure in this database. Following this parallel threads are created, which attempt to input further orders into the database. Following the Drive Test, the CPU Test test then is executed.

The results are displayed in the lower window: the drive and the CPU index are percentage index values comparing to our our IFS Server v. 6.0 series, which we rated at the time at 100%.

If you have specified an email address, you will receive the results by mail, with the heading as specified in the Please add a short description of the Firebird server hard- and software field.


How does it work?

Based on a demo database, which is created automatically, the standard benchmark, which is also included in the Free IBExpert Benchmark Tool, runs approximately 8 million operations (individual insert/update/delete/select statements) using 10 simultaneous processes in 2 runs on databases created with different parameters to demonstrate the impact of the physical drive speed.

The extended benchmark uses 50 parallel processes (simulating 50 concurrent users) and the XXL benchmark simulates 250 concurrent users with its 250 simultaneous processes.

Drive Test

The Drive Test is simply creating a benchmark database from a script. Within the Drive Test we changed the value of the so-called cache buffers (DefaultDBCachePages in firebird.conf) to 50, the smallest value possible. Then a stored procedure is executed inside the database to generate a lot of test data. In the Drive Test approximately 850,000 operations (i.e. INSERT, UPDATE, DELETE, SELECT statements) are carried out. This really measures the speed of the drive, because of the low-level of cache that is being used, is responsible for making a lot of I/O operations on the external drive.

  • Create DB - shows the time in seconds that it takes to create the Demo database.
  • TMP - Temporary file management that is used when for example, Firebird does not have any indices, which it can use, or it needs to perform some GROUP BY, HAVING or similar instructions.
  • Thread test - this is the multi-threaded test. If you have for example a test on this machine, and you have 1 thread or 10 threads running, you will also see this running in the Task Manager. This can result in huge differences on different machines.
  • Result - the basic value that is calculated here displays the combined results of the drive test, and we compare this value to a server that was distributed by ourselves around 2010 which had 100% speed. In reality, when you test on typical customer machines, especially in virtual environments, you will often see values of as little as 30%. Typical values are often in the range of 100%-150%.

CPU Test

This category calculates the percentage value for multi-threaded CPU tests with 5000 pages cache result to better see the advantages when using Firebird 3. This means that it no longer needs any operations on the disk. You will see a much faster result. The Thread Test, the multi-threaded line - with this one 10 parallel threads are always executed, which means it generates several thousand new orders inside the Demo database simultaneously. The Threads value here is the most important value, when you later have to check whether the server is really fast. Only this Threads value is recalculated to the Thread Test.

Thread Test

The Thread Test simply we take the CPU Test / Threads value and recalculate it. Thread Test simply means that we take the CPU Test / Threads value and compare it to the original machine. This machine is compared to our original machine as an index value.


How do your results compare?

Compare your server's performance to our IFS servers! This simple but effective tool gives you a reference benchmark, based on our recommended IFS Servers.

Our servers will show you a typical Firebird 2.5 Superserver performance of at least 200% for the CPU and at least 200% for the HDD Test with our IFS server series), und using Firebird 3.0 at least 230% for the CPU and at least 500% for the HDD Test. Results under 100% indicate an outdated server performance.

Important: This benchmark gives you a value to compare several hardware or software configurations running the Firebird server.

You will notice a huge performance increase, when comparing a Windows environment mit a Linux environment on the same hardware. This is partially due to the Windows NTFS file system, which is standard on Windows.

If, for example, you want to restart the Benchmark, especially on virtual machines, we always recommend executing this Benchmark several times, because sometimes when you execute it again, you can achieve better or worse values. This can happen because other jobs are being executed by the virtual machine host.

If the results are poor, click in the results window. You will be automatically redirected to our homepage. Here you can view our current offers for our really fast IFS Firebird servers.

Changing the server to a more powerful hardware might improve the speed by 100%. Additionally optimizing your software and database operations can often improve the speed by more than 1000%. Ask sales@ibexpert.biz for further support.



IBEScript.exe

IBEScript.exe can be found in the IBExpert root directory, and needs to be started from DOS. (This feature is unfortunately not included in the free IBExpert Personal Edition.)

For regulations regarding distribution of any of the IBExpert Server Tools modules (hkSCC.exe, ibescript.exe, ibescript.dll and fbcrypt) together with your application, please refer to the IBExpert Server Tools documentation contents page.

Syntax

 IBEScript script_filename [options]

  • -S = silent mode
  • -V<Verbose_file> = verbose output file. If <Verbose_file> exists, IBEScript will overwrite it.
  • -v<verbose_file> = verbose output file. If <verbose_file> exists, IBEScript will append message to this file.
  • -E = display only error messages.
  • -N = continue after error.
  • -A<seconds> = advanced progress: <seconds> specifies the time interval in seconds to display progress messages. If <seconds> is not specified, advanced progress information will be displayed every second. The following information is available:
    • SC - statements count, number of executed statements;
    • POC - percentage of completion;
    • TS - time spent;
    • ETL - estimated time left.
For INPUT scripts the name of the input script file name will also be displayed. Advanced progress information is displayed even if the -S option (silent mode) is specified.
  • -T = write timestamp into log.
  • -D = connections string (use it if your script does not contain CONNECT or CREATE DATABASE statements).
  • -P = connection password (use only with -D option).
  • -R = connection role (use only with -D option).
  • -U = connection user name (use only with -D option).
  • -C = character set (use only with -D option).
  • -l = client library file (gds32.dll if not specified).
  • -L<1|2|3> = SQL dialect (use only with -D option; 1 if not specified).
  • -i = idle priority.
  • -G<variable_name>=<value> = specify global variable values.
  • -I<file_path_and_name> = By default (without the -I option specified). IBEScript.exe processes IBEScript.ini files immediately after starting in the following order:
1. IBEScript.ini in the IBEScript.exe directory, if it exists,
2. IBEScript.ini in the current directory, if it exists. If only -I is specified without a file name, any INI-file will be ignored. If a file name is specified after -I (e.g. -I"C:\my files\myibescript.ini") ONLY this file will be processed if it exists. Parameters specified in the command line will overwrite corresponding ones from an INI file.
  • -A<seconds> = display advanced progress information every <seconds> second(s) (default 1)
  • -e = encrypt a script file (no execution will be performed)
  • -d = decrypt an encrypted script file (no execution will be performed)
  • -p<password> = encrypt/decrypt password
  • -o<file_name> = output file for encrypted and decrypted scripts

WARNING! All options are case-sensitive!

Example 1: IBEScript C:\My Scripts\CreateDB.sql
Example 2: IBEScript C:\MyScripts\CreateDB.sql -S -VScriptLog.txt

The following features are also available: when no password and/or user name are specified in the CONNECT or CREATE DATABASE statements, a login dialog will appear. It is also possible to change the connection character set (SET NAMES) and garbage collection option (SET GARBAGE_COLLECT) before the RECONNECT statement. Any SET commands mentioned which are followed by a RECONNECT statement will affect the new connection.

It is also possible to use environment variables in INPUT, OUTPUT and SET BLOBFILE statements (see example below).

UTF8 BOM is skipped when executing a script from file.
The OUTPUT command also supports the OctetsAsHex option, which allows the extraction of CHAR(n) CHARACTER SET OCTETS values in hexadecimal format.


IBEScript examples

1. IBEBlock technology to create procedures with access to data in different Firebird/InterBase® databases

A simple script to copy data from one Firebird/InterBase® database to another:

 execute ibeblock
 as
 begin
   FBSrc  = ibec_CreateConnection(__ctFirebird,'DBName="localhost:C:\DB1.FDB";
   ClientLib=C:\Program Files\Firebird\Bin\fbclient.dll;
   user=SYSDBA; password=masterkey; names=WIN1252; sqldialect=3');
   FBDest = ibec_CreateConnection(__ctFirebird,'DBName="localhost:C:\DB2.FDB";
   ClientLib=C:\Program Files\Firebird\Bin\fbclient.dll;
   user=SYSDBA; password=masterkey; names=WIN1252; sqldialect=3');
   ibec_UseConnection(FbSrc);
   for select CustNo, Company, Addr1 from customer order by company into :CustNo, :Company,
     :Addr1
   do
   begin
      use FBDest;
      INSERT INTO CUSTOMER (CustNo, Company, Addr1) VALUES (:CustNo, :Company, :Addr1);
      use FBSrc;
   end
   use FBDest;
   COMMIT;
   ibec_CloseConnection(FBSrc);
   ibec_CloseConnection(FBDest);
 end

2. ODBC access to all ODBC data sources for importing or exporting data from a script

The same can also be done with any ODBC data source as the source and/or destination (this functionality has been tested with IBM DB2®, Oracle®, MS Access®, Sybase® etc.):

 execute ibeblock
 as
 begin
   OdbcCon = ibec_CreateConnection(__ctODBC, 'DBQ=C:\demo.mdb; DRIVER=Microsoft Access
   Driver (*.mdb)');
   FBCon = ibec_CreateConnection(__ctFirebird,'DBName="AVX-MAIN:D:\FB2_DATA\IBEHELP.FBA";
   ClientLib=C:\Program Files\Firebird\Bin\fbclient.dll;
   user=SYSDBA; password=masterkey; names=WIN1251; sqldialect=3');
   ibec_UseConnection(OdbcCon);
   for select CustNo, Company, Addr1 from customer order by company into :CustNo, :Company,
   :Addr1
   do
   begin
      use FBCon;
   INSERT INTO CUSTOMER (CustNo, Company, Addr1) VALUES (:CustNo, :Company, :Addr1);
      use OdbcCon;
   end
   use FBCon;
   COMMIT;
   ibec_CloseConnection(OdbcCon);
   ibec_CloseConnection(FBCon);
 end

3. Comparing databases from scripts

The following script compares the structure of two Firebird/InterBase® databases and stores a script that can be used to synchronize the database structure in the destination database: Save the following text as c:\comp.sql:

 execute ibeblock
 as
 begin
   create connection ReferenceDB dbname 'localhost:c:\RefDB.fdb'
   password 'masterkey' user 'SYSDBA'
   clientlib 'C:\Program Files\Firebird\bin\fbclient.dll'; 

   create connection CustomerDB dbname 'localhost:c:\customerDB.fdb'
   password 'masterkey' user 'SYSDBA'
   clientlib 'C:\Program Files\Firebird\bin\fbclient.dll';

   cbb = 'execute ibeblock (LogMessage variant)
          as
          begin
            ibec_progress(LogMessage);
          end';

   ibec_CompareMetadata(ReferenceDB, CustomerDB, 'C:\CompRes.sql', 'OmitDescriptions; OmitGrants', cbb);

   close connection ReferenceDB;
   close connection CustomerDB;
 end

Now run the following command line to create the script and synchronize the databases:

 ibescript.exe c:\comp.sql
 ibescript.exe c:\compres.sql

4. Create automatic reports

ibec_CreateReport prepares a report from a specified source and returns prepared report data. For preparing the initial report please refer to the IBExpert Report Manager.

This feature can be used for executing reports created with the IBExpert Report Manager in command-line mode, for example with batch files. The monthly sales report, invoices or other such reports can be designed in the Report Manager and executed with simple SQL statements. The result can then be saved in the database as a PDF file or other formats and sent by email or exported using ibec_ExportReport.

 execute ibeblock
  as
  begin
    Params['HeaderMemo'] = '';
    Params['MEMO2'] = 2;

    SELECT IBE$REPORT_SOURCE FROM ibe$reports
    where ibe$report_id = 4
    into :RepSrc;

    Report = ibec_CreateReport(RepSrc, Params, null);
    ibec_SaveToFile('D:\reptest.fp3', Report, 0);
            Res = ibec_ExportReport(Report, 'D:\reptest.pdf', __erPDF, 'EmbeddedFonts=TRUE');
    Res = ibec_ExportReport(Report, 'D:\reptest.jpg', __erJPEG, 'CropImages; Quality=90');
 end

5. File import into blob fields from SQL scripts

The following script imports the data from the files into the table TEST:

 SET BLOBFILE 'C:\f1.jpg';
 INSERT INTO TEST(ID,BLOBCOL) VALUES (1, :h00000000_7FFFFFFF);
 SET BLOBFILE 'C:\f2.jpg';
 INSERT INTO TEST(ID,BLOBCOL) VALUES (2, :h00000000_7FFFFFFF);
 SET BLOBFILE 'C:\f3.jpg';
 INSERT INTO TEST(ID,BLOBCOL) VALUES (3, :h00000000_7FFFFFFF);

The same syntax can be used for updating blob data.

6. Using environment variables in INPUT, OUTPUT and SET BLOBFILE statements

 execute ibeblock 
 as
 begin
 ibec_SetEnvironmentVariable('MyScriptDir', 'D:\Scripts\MyScripts');
 ibec_SetEnvironmentVariable('MyDataDir', 'D:\Data');
 ibec_SetEnvironmentVariable('MyBlobData', 'D:\Data\Blobs');
 end;

 SET BLOBFILE '\mytable.lob';

 OUTPUT '\mytable.sql';
 select * from mytable
 asinsert;
 COMMIT;

 INPUT '\ProcessData.sql';

These are just a few examples of the many tasks you can do with IBEScript. The full syntax and parameter list for ibec_CompareMetadata can be found in the online documentation, along with a full list of all current IBEBlock commands.


Encryption & decryption

There are two possible ways to encrypt/decrypt scripts and to execute encrypted scripts:

  1. Encrypting without the password. In this case there is no possibility to decrypt an encrypted script but it is possible to execute this script with IBEScript.
  2. Encrypting with the password. In this case it possible to decrypt the script and execute it with IBExpert if the correct password is specified.

The following options control the encrypting and decrypting:

  • -e = encrypts a script file and creates a file with the extension .esql if the output file is not specified (no execution will be performed).
  • -d = decrypts an encrypted script file if it was encrypted with password (no execution will be performed).
  • -p<password> = encrypt/decrypt password.
  • -o<file_name> = output file name for encrypted and decrypted scripts.

Again: all options are case-sensitive!

Example 1

 IBEScript "C:\MyScripts\CreateDB.sql"

Example 2

 IBEScript C:\MyScripts\CreateDB.sql -S -UScriptLog.txt

This product can be purchased as part of the distribution software listed above.

See also:
Firebird Interactive SQL Utility
IBEBlock
Script Executive