Files
TeslaRel410/BORLAND/BDE/DOC/READSDK.TXT
T
CydandClaude Fable 5 63312e07f9 source410: literal 4.10 source reconstruction + BC++ 4.52 fleet toolchain archived
- BORLAND/: Borland C++ 4.52 (chosen over 4.5 by byte-match: CODE/RP/CW32.LIB
  is identical to 4.52's install lib). BCC32/TLINK32/TLIB/MAKE run natively on
  Win11; CODE/BT/OPT.MAK is the shipped BTL4OPT.EXE's exact flag recipe
  (extender = Borland PowerPack DPMI32, not Phar Lap TNT).
- restoration/source410/: the literal 1995-form reconstruction of the missing
  BT game source (never mixed into CODE/). Round 1-3 state:
  * 6 of 10 surviving original TUs COMPILE CLEAN under the period toolchain
    (BTMSSN, BTCNSL, BTSCNRL, BTTEAM, BTL4MODE, BTL4ARND) - first builds
    since 1996.
  * BT_L4/BTL4APP.CPP pilot reconstruction: 12/12 functions, Fail() lands on
    its binary-recorded line 400 exactly.
  * BT/BTCNSL.HPP: console wire IDs recovered from the binary's ctors
    (Killed=9, Damaged=10, ScoreUpdate=13, DeathWithoutHonor=15 [T1];
    TeamScore=12 flagged [T4]).
  * MUNGA/: 8 engine-header backfills back-dated from the BT412 WinTesla tree
    (VDATA numbering decomp-verified; AUDREND's OpenAL-era virtual removed -
    the period compiler is the drift detector).
  * Tooling: backdate.py (WinTesla->1995 header transform), compile410.sh
    (per-TU verification sweep under authentic OPT.MAK flags).
  * README: corrected roadmap - MECH.HPP is the capstone grown with the mech
    TU reconstructions; BTREG.CPP green = the header-family milestone.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-19 07:33:26 -05:00

425 lines
16 KiB
Plaintext

Welcome to the Borland Database Engine
--------------------------------------
This README file contains installation instructions, information about
how to contact Borland, and important last-minute information about the
Borland Database Engine (BDE).
The Borland Database Engine gives developers the opportunity to develop
applications with the same database engine that is used in Paradox for
Windows, dBASE for Windows, Delphi and ReportSmith.
Contents
--------
I. Installation and Configuration
II. Borland Database Engine Directories
III. Overview of Components
IV. Programming with the BDE
V. Programming with the ODBC Socket
VI. Using DLL Swap
VII. Using the Database Desktop
VIII. Accessing SQL Servers using Native Drivers
IX. What's New for this Release
X. Getting Help & Reporting Bugs
XI. Product Information
I. Installation and Configuration
-----------------------------------
System requirements:
- DOS 3.1 or higher
- Windows version 3.1
- 6 MB RAM required, 8 MB recommended
- 25 MB free disk space
- Follow these steps to install the Borland Database Engine from
CD-ROM:
1. Insert the CD-ROM in your CD-ROM drive. (The following
instructions assume you are using drive E. Substitute your
drive letter if necessary.)
2. Choose File|Run from the Program Manager. The Run dialog box appears.
3. Enter E:SETUP in the Command Line text box.
4. Follow the instructions on the screen.
- Follow these steps to install the Borland Database Engine from
diskettes:
1. Insert Diskette 1 in a floppy drive. (The following instructions
assume you are using drive A. Substitute your drive letter
if necessary.)
2. Choose File|Run from the Program Manager. The Run dialog box appears.
3. Enter A:SETUP in the Command Line text box.
4. Follow the instructions on the screen.
II. Borland Database Engine Directories
-----------------------------------------
If you accepted BDE and IDAPI as the installation directories, the
directory structure for the Borland Database Engine is as follows:
IDAPI (IDAPI .DLLs and the configuration file IDAPI.CFG)
|
+--- LANGDRV
BDE
|
+--- BIN
|
+--- DOC
|
+--- EXAMPLES
| |
| +--- C
| | |
| | +--- ADDRESS
| | |
| | +--- DBPING
| | |
| | +--- INVENTRY
| |
| +--- DELPHI
| | |
| | +--- FILTER
| | |
| | +--- TABLEENH
| | |
| | +--- VCL
| |
| +--- PASCAL
| | |
| | +--- EMPLOYEE
| |
| +--- PDOXWIN
| | |
| | +--- RESTRUCT
| | |
| | +--- SEEK
| |
| +--- QUERY
| |
| +--- SNIPIT
| |
| +--- TABLES
|
+--- INCLUDE
|
+--- LIB
|
+--- REDIST
|
+--- UNITS
DBD
|
+---DBDPRIV
III. Overview of Components
-----------------------------
Software components
The BDE consists of the BDE API and drivers for Paradox, dBASE, ODBC
Socket, and Text files. FILELIST.TXT lists the files that make up
this release of the Borland Database Engine. After the BDE is
installed, you should see icons for SnipIt Code Viewer, Query Manager,
DBPing, the BDE on-line help system, various sample applications,
the READSDK, the BDE Configuration Utility, the Database Desktop, and
the DLL Swapper.
Documentation Components
Documentation for the Borland Database Engine consists of the Borland
Database Engine on-line help, and various text files. The on-line
help and the supporting text files can be found in the DOC directory.
IV. Programming with the BDE
-----------------------------
- All developers using C, or C++, should use the provided IDAPI.LIB
library when you link your application. IDAPI.LIB is more than just
an import library. It has hooks to locate and load various DLLs.
- We recommend that you use DbiQInstantiateAnswer() to save answer
tables produced by query functions. This is more efficient than
reading and writing one record at a time.
- BDE searches for the configuration file in this order:
1. Uses the CFG specified in the DBIEnv structure
2. Checks for a defined CFG file in the WIN.INI file located in
your Windows directory. The entry checked for is "[IDAPI]"
with an sub-entry of "CONFIGFILE01."
3. Checks for the CFG file in the startup directory.
4. If the CFG file cannot be found, BDE initializes with a
predefined set of configuration settings. The default
settings include no locking of STANDARD database tables.
- BDE\INCLUDE directory needs to be specified before the
BORLANDC\INCLUDE directory when using BC 3.1.
- If you are using Microsoft C and NMAKE.EXE, make sure that you have
the INCLUDE and LIB environment variables set.
- For ANSI drivers do not specify "iLen" when calling DbiNativeToAnsi().
Simply translate the entire string.
- You must set the "iLen" part of your field descriptors when calling
DbiCreateInMemTable().
- The Pascal unit files distributed with the BDE SDK (DBIPROCS.PAS,
DBITYPES.PAS, and DBIERRORS.PAS) are NOT intended to be replacements
for similarly named Delphi units. They are to be used with BDE-based
Borland Pascal programs. The SDK units will have a slightly different
interface section than those compiled and provided with Delphi. If
you replace the Delphi units, you will not be able to link with other
units that are dependent on the Delphi supplied ones.
- If there is a new prototype that you wish to access from Delphi you
need to either create a DBINEW unit or simply declare the prototypes
in the .PAS file of your choice.
- We strongly recommend that you use the debug layer during application
development and testing. This is done by swapping the IDAPI01.DLL with
the DBG.DLL and activating the debug layer with a call to
DbiDebugLayerOptions(). Here are some other debug layer details.
1. The debug layer is "shared" among all BDE clients.
2. We strongly recommended that one BDE application be designated
to activate and deactivate the debug layer.
3. All applications that use BDE will output trace information
after the debug layer has been enabled.
4. See the reference material for DbiDebugLayerOptions() for more
details.
- Within the BDE Reference Help under "Data Structures"|"CANHdr" there is
a "Operator identifying leaf operands" called canTUPLE. This is not a
supported operator. In addition the "Arithmetic" and "Aggregate Type"
operators listed are not supported.
- Within the BDE Reference Help under "Data Structures"|"Data Type
Translations" the data type "Money" is converted to Number (20, 4) for
dBASE tables not Float (20, 4).
- Older versions of the BDECFG.EXE (then called IDAPICFG.EXE) will
cause a General Protection Fault if the LDPATH statement in the
WIN.INI file points to a directory that contains new or current
versions of the BDE files. Use the BDECFG.EXE to avoid this problem.
- When using ODBC data sources with the auto odbc option set to true and
a driver name greater than 32 characters, IDAPI truncates the name to
32 characters. These truncated drivers do not appear in the driver list
within BDECFG.EXE. Therefore they cannot be deleted from the
configuration file. Every time that the auto odbc option is set to
true these drivers are added repeatedly to the configuration file after
every save - thus the configuration file keeps growing and there is no
way to remove the excess drivers. To avoid this problem do not use
driver names greater than 32 characters in length.
V. Programming with the ODBC Socket
-------------------------------------
- This release of the Borland Database Engine comes with an ODBC Socket.
It has been certified with Microsoft's 2.0 ODBC Driver Manager.
The files ODBC.DLL, ODBCINST.DLL and ODBCINST.HLP have been installed
into your WINDOWS SYSTEM directory. Proper versioning procedures
occur during the install, therefore if you had newer ODBC Driver
Manager files already on your system, then they have not been
replaced.
NOTE: The ODBC 2.0 driver manager does work with ODBC 1.x ODBC drivers.
- The driver description in the ODBC.INI must match the driver name
exactly as found in ODBCINST.INI in order for the BDE Configuration
Utility to add drivers to the BDE configuration file.
- For information on how to create an ODBC driver connection and alias,
search for "ODBC Driver Connection" in the BDE Configuration Utility
on-line help.
- When using passthrough SQL functions (DbiQExecDirect), case-sensitive
object names should be enclosed by the DBMS-identifier quote
character.
- ODBC does not support owner-qualified indexes. When using
DbiOpenTable, do not specify an owner name with the index parameter.
- Physical data type identifiers are composed of a 16-bit number. The
high-byte is the driver ID and the low-byte is the ODBC SQL type
identifier. To determine the SQL type of a field, use the following
algorithm:
SWORD iSqlType;
iSqlType = (SWORD)(signed char)(0x00FF & pFldDesc->iFldType)
The cast to signed char is necessary to preserve the sign information.
- Physical types are stored in the SQL_C_ types documented in
Microsoft's Open Database Connectivity Software Development Kit,
Version 2.0 Appendix D. The only exception is for SQL_VARBINARY
types. The first byte specifies the number of bytes of information.
- Updateable ODBC queries are not supported with aliases that have the
SQLPASSTHRU MODE parameter set to NOT SHARED. The SQLPASSTHRU MODE is
a parameter that can be set by the BDE Configuration Utility for each
ODBC alias.
Database-specific information
-----------------------------
- You may encounter problems when copying Oracle tables containing
NUMERIC type columns to other Oracle tables. This is a known problem
and is fixed in Intersolv ODBC 2.0 Oracle driver.
- When specifying NetWare SQL BLOB\MEMO fields, it is necessary to
specify an iUnits setting less than or equal to 32765. The default of
32767 that is assumed by the driver is incorrect due to field header
information.
- When using DbiBatchMove with ebatMode set to batCOPY, BLOB fields that
require an iUnits specification default to the maximum allowable size
supported. This can cause problems for NetWare SQL users because the
BLOB on the target table is set to 32K, exceeding the record buffer
limit.
- DB2/2 (Database Manager) does not support concatenation operators in
queries.
- Depending on the SQL server being used, scrolling through a set of
records based on a non-unique index does not always show a consistent
ordering of NULL index values (i.e. sometimes they will be at BOF and
sometimes at EOF). This is the behavior of the server and not IDAPI.
- When using the Microsoft 1.0 ODBC Text driver within a BDE program
opening a database results in the program's working directory being
set to the directory where the Text file is located. This means that
runtime functions (i.e. findfirst) are not using the Windows defined
working directory but the directory containing the Text database.
VI. Using DLL Swap
--------------------
It is possible for your DLLs to reach a state that the DLL Swapper will
not be able to resolve. If you have IDAPI01.DLL, DBG.DLL, and NODBG.DLL
on your disk at the same time, an error message will be displayed.
To resolve the conflict, delete either DBG.DLL or NODBG.DLL. You should
delete the .DLL that is the same size as the IDAPI01.DLL file.
VII. Using the Database Desktop
---------------------------------
The Database Desktop is a utility that allows you to create, modify,
and restructure Paradox and dBASE tables. It uses BDE for all of
its database I/O and requires the BDE configuration file for access
to SQL databases. Refer to your Database Desktop on-line help for
detailed product information.
VIII. Accessing SQL Servers using Native Drivers
------------------------------------------------
This release of the Borland Database Engine has been certified with
the Borland SQL Links 2.5 product. Borland SQL Links 2.5 product
offers high performance native drivers for InterBase, Oracle,
Informix, and MS/SYBASE SQL Server.
With Borland SQL Links 2.5 you can build applications and scale them
between local and remote data. No other database engine provides this
level of scalability! Developers use one API to access all drivers
supported by BDE.
IX. What's New for this Release
-----------------------------------
Local Features
- You can now find the BDE documentation on-line (BDE.HLP & LOCALSQL.HLP)
- Local SQL has been enhanced. For more information see the Local SQL
on-line help file.
- Local SQL now supports parameterized queries. See Local SQL on-line
help under "Parameter Substitutions in DML Statements".
- There are two new functions (DbiAddAlias and DbiDeleteAlias) that
allow aliases to be added and deleted from the configuration file.
For more information see the BDE on-line help file.
- There is now schema support for ASCII tables. See the SNIPIT example
(CR8TXTBL.C) for more details.
- Support for accessing encrypted dBASE tables is now included. See the
SNIPIT example (DBLOGIN.C) for more details.
- When trying to open a dBASE table with an invalid index there is now
the capability to recieve a callback and determine whether or not to
continue opening the table. See the SNIPIT example (INPUTREQ.C) for
more details.
New Applications
- The Database Desktop has been upgraded (version 5.1) to allow
access to remote tables as well as local tables. For more information
use the Database Desktop on-line help file (DBD.HLP).
Changes to Provided Examples
The following SNIPIT examples have been added or changed:
- FILTCOMP.C: Comparison filter (New)
- FILTCONT.C: Continue filter (New)
- ADDALIAS.C: Adding and deleting aliases (New)
- KEYUPDT.C: Keyed updates (New)
- LSQLLIVE.C: Local and remote dynasets (Modified)
- SQLBIND.C: Local and remote parameter binding (Modified)
- UPDTCRNT.C: Cursor symantics (New)
- STORPROC.C: Using stored procedures (New)
- CR8TXTBL.C: Text table using a schema file (Modified)
- DBLOGIN.C: Accessing encrypted dBASE tables (New)
- TEXTEXP.C: Exporting test file using a schema file (Modified)
- INPUTREQ.C: Accessing tables with a missing or invalid index (New)
The following are examples of using the BDE in a DLL for use with
PDOXWIN in OPAL:
- SEEK: Search dBASE expression indexes.
- RESTRUCT: Restructure a table.
The following are examples of using the BDE with Delphi:
- FILTER: Using a filter with a TTable
- TABLEENH: Creating a new Table derived control with Block functionality.
X. Getting Help & Reporting Bugs
-------------------------------------
To get technical support from Borland and to report bugs, use CompuServe.
Type GO BDEVTOOL from any '!' prompt and leave your message in section 4.
For information on phone support contact Borland at (800) 839-9777.
XI. Product Information
------------------------
For information about any Borland products, contact Borland in the
U.S. at (408) 431-1000. International customers should contact the
nearest Borland International office.