ISAM, B-TREEs, and Databa

 BBS: Inland Empire Archive
Date: 06-19-92 (08:59)             Number: 967
From: BILL BEELER                  Refer#: NONE
  To: KAREN CRAVENS                 Recvd: NO  
Subj: ISAM, B-TREEs, and Databa      Conf: (2) Quik_Bas
In a message to All <16 Jun 92 18:15> Karen Cravens wrote:

 KC> Rather than reinvent the wheel...are there any libraries/subroutines
 KC> anybody knows of (short of getting the Professional Development System)
 KC> that'll let me write keyed files in QB45?  Even more particularly, are
 KC> there any routines for reading and writing dBASE-compatible .DBFs and
 KC> .NDXs?

The most widely recognized dBase compatable library is AJS' dB/LIB which
allows reading/writing etc of dBase III data files and
indexes. However, as for ISAM abilities you'll have to roll
your own from it's mid-level procedures. It's commercial
and Programmer's Paradise has it for $89 for QB, $179 for
PDS and $495 for Network compatable. This library returns
records in dynamic strings and it's size is from about 55K
to 66K (more for the network version).

You might want to look for Cornel Huth's latest file management library
called BULLET. It's been hatched into the Programmers
Distribution Network (PDN...shareware with a limited time
for evalutation) and will soon be available on GEnie,
Compuserve and Computer Connection (DC). It will manage
dBase Data files (if you want it to or it can setup dBase
type files with binary data if desired) but uses it's own
indexing scheme that is extremely efficient and can be set
up for any collate table available to DOS by using
NLS...National Language Support (ie, it will sort ASCII data according to the
language of the user's PC). It has three levels of
functions that allow for true ISAM abilities (high-level),
more direct file manipulation (mid-level) and DOS level
(low-level) manipulation. It comes with a TSR that can load
high and allows access to definitions of all functions
(actually, there's only one function but you pass different
parameters to instruct it to perform different tasks),
source examples and a tutorial on data bases. It can be
called from any language that returns a far pointer (ie,
you can use the same library with QB, PDS, Pascal, C, in a
DDL, etc) and allow file locks for network compatability.
Returns records into a TYPE (for BASIC, Struct for C, etc)
and size is about 33K. Price is $79.

...oh BTW, it uses a record based transaction scheme that will back out of
errors automatically (ie, if you try to save a record and a
unique key already exists it will undo all of what it did
up to that point and return an error that you can then act
on) and you can have up to 32 indexes per data file that
are handled automatically. Unlike the PDS ISAM, data and
index files are not kept within a single file. Reindex,
Copy, Expand files, Flush, Delete and Pack routines are
included as functions of BULLET.


                                                    ...Bill...
--- GEcho 1.00/beta
 * Origin: Amber Shadow BBS - MultiLine, MultiProblems - HST/V32b (1:203/988)
Outer Court
Echo Basic Postings

Books at Amazon:

Back to BASIC: The History, Corruption, and Future of the Language

Hackers: Heroes of the Computer Revolution (including Tiny BASIC)

Go to: The Story of the Math Majors, Bridge Players, Engineers, Chess Wizards, Scientists and Iconoclasts who were the Hero Programmers of the Software Revolution

The Advent of the Algorithm: The Idea that Rules the World

Moths in the Machine: The Power and Perils of Programming

Mastering Visual Basic .NET