Installation instructions for Borland Database Engine (BDE) 5.02 - roles/isolation levels/transaction wait

By: Borland Staff

Abstract: A BDE Updater can get you the current version of BDE that allows roles

Borland Database Engine

 I'm programming with Delphi and want to use ROLES in BDE
 applications. Is there anywere an update to BDE that works
 with ROLES?


InterBase SQL ROLES and other InterBase enhancements are supported in
the BDE 5.0.2 and later, available on the website as of

This upgrade install requires a currently installed version of the
32-bit BDE.  You should be able to use your existing Delphi 4 or C++
Builder 4 InstallShield Express to build BDE deployment installs.

Below is an excerpt from the BDE readme for C++ Builder 4 on what's
changed between 5.01 and 5.02.  There is additional information in the
full readme for the upgrade install.


InterBase allows users to log in by specifying a role.
ROLE NAME is a new BDE configuration parameter that allows
BDE clients to pass a role name. ROLE NAME can also be
passed as an optional parameter when using a TDatabase
component (Delphi and C++Builder).

This information supersedes that in the InterBase 5.5
Operations Guide, which indicates that the BDE has no
property for specifying a role name.

Transaction Isolation Levels & InterBase
By adding 4096 to the setting of DRIVER FLAGS in the
Borland Database Engine (BDE) configuration, you can
specify that the InterBase SQL Links driver should use soft
commits. Soft commits are a feature of InterBase that let
the driver retain the cursor when committing changes. Soft
commits improve performance on updates to large sets of
data. When not used, the BDE must re-fetch all the records,
even for a single record change. With soft commit the
cursor is retained, and a re-fetch is not needed. The soft 
commit property corresponds to the COMMIT RETAINING 
transaction option in the InterBase documentation.

  DRIVER FLAGS  Isolation level  Commit type
  ------------  ---------------  ------------
  0             Read committed   hard commit
  512           Repeatable read  hard commit
  4096          Read committed   soft commit
  4608          Repeatable read  soft commit

The 4096 driver flag bit only affects implicit transaction
behavior. Use the COMMIT RETAINING property to control the
default commit behavior of explicit transactions.

Explicit transactions
The new BDE configuration parameter COMMIT RETAIN allows
explicit transactions to use soft commit. The new database
property dbCOMMITRETAIN also does this. Only explicit
transactions are affected. The existing driver flags are
still valid for explicit transactions.

  COMMIT RETAINING = TRUE    calls isc_commit_retaining()
  COMMIT RETAINING = FALSE   calls isc_commit_transaction()

Transaction WAIT
Currently, the InterBase SQL Links driver uses NOWAIT when
resolving lock conflicts and returns an error immediately
if there is a resource conflict. Setting the WAIT ON LOCK
configuration parameter allows SQL Links to use WAIT on
InterBase transactions. This can also be done by setting
the r/w database property dbWAITONLOCK to TRUE.

How To Get Updates
Updates to the Borland Database Engine (BDE), SQL Links,
and documentation for the two may be distributed in a
number of ways. Updates are available from the BDE
Developer Support Web page. See the URL:

The BDE Developer Support Web page also contains tips,
links to Technical Information sheets (TIs), examples, and
other useful technical information.

Server Response from: ETNASC04