fllogosm
 Main
 User's Guide
 Developer's Guide
 Admin's Guide
 FAQ
 License Info
 Feedback
 RXDbase

What is RXDbase.

The main goal was to provide a simple yet efficient database table class object which would have the following features:

  • Fixed length fields (this feat may be removed by popular demand).
  • ISAM and B+Tree indexing.
  • Rexx string-oriented. (non-typed fields)
  • Easy to use.
  • Exploitable from NetRexx and Java seamlessly.
  • Could read and write both local and remote db tables.

(Note that the ISAM indexes have been dropped as the disk-based B+Tree implementation proved to be already up to the task.)

The result is that four classes were generated:

  • RXDbase is the local storage, NetRexx friendly class.
  • RXDBClient is the remote storage, NetRexx friendly class.
  • JRXDBase is the local storage, Java friendly class.
  • JRXDBClient is the remote storage, Java friendly class.

A fifth object, BPlusTree, has been added since then; it is a B+Tree implementation specifically designed for persistent, disk-based trees, with pattern-matching queries and several other features. You can of course use it in your programs as long as you have a valid MaxBase developer license.

Note: Two interfaces link the local and remote storage-oriented classes: RXDBInterface and JRXDBInterface. The first one (implemented by RXDbase and RXDBClient) describes the methods that RXDbase and RXDBClient share, while the second does the same for JRXDbase and JRXDBClient. This means that you can have a single object handle remote and local databases (exception made for connect methods).

RXDBInterface and JRXDBInterface are composed by the following methods:

disconnect
status
saverec
addfield
delfield
modfieldname
modfieldlength
modfieldidx
modirec
delerec
loadrec
loadrecwithfilter
definefilter
getdbinfo
getdbstats
getdbstatus
globalrebuildidx
rebuildidx
pack