-->
Previous Table of Contents Next


Chapter 62
Adabas-D and other Databases

by Tim Parker

In This Chapter
•   dBASE-compatible databases
•   dbMan
•   Adabas-D
•   LINCKS
•   Other database products

This chapter covers some common database applications for Linux. The applications we focus on primarily in this chapter are Adabas-D, FlagShip, and dbMan V. We also look briefly at LINCKS, a free, object-oriented database management system (DBMS) for Linux.

dBASE-Compatible Databases

About a decade ago there was only one database system in wide-spread use, Ashton-Tate’s dBASE. Before Windows came along, practically every database under DOS was written in dBASE, and as UNIX developed on the small platforms, ports of the dBASE system emerged there, too. Although the ownership of the dBASE package was transferred several times, a Windows-based version didn’t appear fast enough (or stay stable enough) to keep the popularity of the dBASE system alive. Soon, other databases began to be used instead of dBASE.

Along with the development of faster and more powerful versions of dBASE, several companies introduced compatible products that extended the capabilities of the dBASE language. These products, written to the dBASE language set, were generically called xBase to show their ties to dBASE. A few of these xBase systems became very popular with programmers, in particular Clipper, a dBASE-compatible language compiler that accelerated the execution speed of dBASE applications enormously.

While many programmers think of dBASE as a vintage database system now, there are still thousands (if not millions) of applications that were written using that relational database package. Many of these packages are still in use today, either in the exact same format as originally developed or ported to newer xBase versions and newer operating systems. Since it is unlikely that xBase languages and applications will ever go away, it is perhaps no surprise that an xBase port for Linux was introduced.

The company that offers FlagShip, the dBASE- and Clipper-compatible database system, offers versions for many operating systems, mostly UNIX based. Their Linux version is a commercial product, selling for about $199 in the US. However, there are several demo versions available of FlagShip that expire after ten or thirty days, allowing you to see if your existing dBASE or Clipper applications will run under Linux. If they do and you want to move them over, you can then purchase a full copy of FlagShip.

What Is xBase?

xBase is a generic term for implementations of what was originally the dBASE programming language. The main players in the DOS version of this database are FoxPro (now owned by Microsoft), dBASE V (now owned by Borland), and Clipper (owned by Computer Associates).

xBase is a language that has statements normally found in programming languages, such as IF, ELSE, ENDIF, and WHILE. The programming language structure is designed for accessing records in databases and not for general-purpose programming. For example, the GOTO statement in xBase refers to a record in a database, not a location in the program code. xBase has some powerful statements for processing files and getting data from forms and screens.

In addition, setting up relations between files is easy to do with xBase. The names of all fields in a file, as well as their types and lengths, are recorded in the file header. New fields can be added to a file without changing programs that use the file. The scheme allows for different, disjointed programs all accessing the database file in their own way and all using the fields in the header.

The three major manufacturers of xBase databases have largely ignored Linux as a platform for their products. What we have for Linux are FlagShip and dbMan (from Versasoft Corporation). Both of these products run on several implementations of UNIX.

Comparing the two products is like comparing apples and oranges. FlagShip is patterned after Clipper Version 5. The dbMan package resembles dBASE III+ or FoxPlus. FlagShip, like Clipper, is a compiler. dbMan is primarily an interpreter, although it is possible to “compile” dbMan programs. FlagShip is also an object-oriented language, which makes it philosophically different from dbMan, as well as from FoxPro and dBASE. Clipper and FlagShip have several C-like features. Actually, the resemblance is a plus for Linux users.

The target markets of the two are also different. dbMan is targeted primarily at individual users. If you want a program you can run on your desk to keep track of time billed to clients or that maintains a phone list of customers or your sales records, dbMan can do the job.

By contrast, FlagShip might be overkill for simple database operations, such as mailing or customer tracking lists, in other words, the casual user, not programmer. This is not to say that you cannot use it for simple applications, but you may have to learn a bit of programming to really use FlagShip’s powerful features. FlagShip is more realistically aimed at people who want to develop or port software packages. Traditionally, dBASE files always have separate data (.DBF) and index files. The format of data files is pretty much uniform for all xBases. It is hard to find two products that use the same index file formats but you can use the same .DBF files with both FlagShip and dbMan.


Previous Table of Contents Next