InterBase Data Access Components Performance

At this page you can see the results of the tests on IBDAC comparison by performance with other component packages: BDE, dbExpress, IBExpress.

All tests were performed under Windows XP Professional operating system.

Computer: Intel Pentium 4 3.00GHz / 1.00 GB of RAM
Server Version: Firebird

Descriptions of database objects you can find at CreatePerf.sql file.

Test 1. Fetch

This test demonstrates fetch of various amounts of rows started since 5000. The default value of Fetch Block Size parameter for this test is 25. SQL statement to be executed for testing

  SELECT * FROM Detail WHERE RowNum <= :Recs

IBDAC - Test 1. Fetch

Test 2. Master/Detail

This test demonstrates fetch of various amounts of rows from Master table and all corresponding to key rows from Detail table.

SQL statement for Master table

  SELECT * FROM Master WHERE Code <= :Recs

SQL statement for Detail table

  SELECT * FROM Detail WHERE Master = :Code

IBDAC - Test 2. Master/Detail

Test 3. Stored procedure call

In this test a stored procedure with parameters is invoked several times. Parameters are passed each time on calling the stored procedure. Beforehand the stored procedure was explicitly prepared.

Stored procedure name: Master_Insert

Parameters to be passed: p_Code, p_Field1, p_Field2, p_Field3

IBDAC - Test 3. Stored procedure call

Test 4. Data loading

Loads specified number of rows into the table.

Loading table: Loaded

To load records IBDAC uses special component TIBCSQL.

The following SQL statement is used for loading data:

  INSERT INTO Loaded (Code, Field1) VALUES (:Code, :Field1)

IBDAC - Test 4. Data loading

Test 5. Multiexecution

Runs SQL statement specified number of times.

Text of SQL statement:


Text for creating empty_proc follows:


IBDAC - Test 5. Multiexecution

Test 6. Insert/Post

This test demonstrates filling table with specified number of records.

Test uses Loaded table.

IBDAC - Test 6. Insert/Post