Personal Computer News


dBase III

Categories: Review: Software

 
Author: Geof Wheelwright
Published in Personal Computer News #078

Close encounters of the dBase III kind for Geof Wheelwright.

Three's Company

Close encounters of the dBase III kind for Geof Wheelwright

dBase III, the 16-bit big brother to the celebrated database package dBase II, is now available in the UK. It is compatible with its sibling and much easier to use.

dBase II's reputation for being the best, and perhaps most powerful, database program ever produced for 8-bit micros was tarnished because it is so difficult to use. In today's world of detailed and friendly front-end menus and programs that hold your hand, Ashton-Tate has had to rethink dBase's user interface.

It was no surprise that dBase II was unfriendly - it was originally designed for minicomputers at the Jet Propulsion Laboratory in Pasadena, as part of the Mariner space program, and was adapted for micros in the late 1970s. This latest version of dBase, is as up-to-date as you could wish for. It's extremely easy to use, but is even more powerful than its predecessor.

Features

dBase III requires an IBM or compatible with a minimum of 256K RAM. It runs under MSDOS version 2.0 or greater and needs two 360K floppy disk drives. Given the features, performance and reception of dBase II, dBase III really ought to be the high-water mark for PC databases and is therefore open to heavier security than most new products - but the program's list of features suggests it should stand up to that examination.

dBase III is a fully relational database which can either operate in a simple dBase II-like command mode or by using an easy - but slower - menuing system. Assist.

It also has a new and extremely quick sort command - for most small databases you don't even have time to make a cup of coffee before the file is sorted. There's also a new indexing technique which maintains a constant sort on the file (as long as you select the index option).

As for statistics, dBase II can use up to 128 fields and hold up to 4,000 characters per record, offers a Memo data mode (which gives you space of up to 4,000 characters for notes on a given record), gives you the option of running up to 10 data files at once and puts no limits on the number of files in a database.

Besides all the flash stuff, the nicest features of dBase III are the Help, Assist and Menu commands. Help gives you access to an extensive help file on disk - which has detailed common operations. It differs from Assist in that it doesn't let you immediately use any of the information it tells you about until you come out of the Help menus. Assist, on the other hand, uses extensive cursor-driven menu options to execute commands. Its role is to assist you to design a form, edit a record or give a command, rather than Help you with background information.

Another simple but noteworthy feature is the 'recording' facility of dBase III. By using the ALTERNATE command, you can record the whole of a given dBase III session on disk as a text file - and then pull down any information in that text file to a word-processed document or have it sent out to a printer. This allows for a certain degree of integration - though by no means as much as the company's Framework integrated suite (Pro-tested issue 72).

And finally, there's the dBase II link. Although dBase II files are not directly compatible with dBase III, a conversion system called dBase Bridge is included with dBase III. It allows conversion of both dBase II programs and data to dBase III format.

In Use

To start, just stick a system disk in drive A and type 'dbase. The program throws up the usual list of 'You will be locked into a dark and cold room for 30 years...' copyright warnings and presents you with a command line at the lower left-hand corner of the screen.

Unlike most programs which use a flashing cursor or some form of '>' sign as a prompt, dBase III uses only a full-stop (just like dBase II). But don't think you're about to be abandoned this time - the Assist system is only a keystroke away (Function key 2) and it's well worth using.

The Assist command begins by telling you which arrows do what and how to get context-sensitive Help - use the F1 key. You're then stepped through the process of either getting out a database or creating a new one - all by cursor-driven menu options along the top of the screen and highlighted filenames in the centre of the screen when applicable.

Once you've got the database out and start browsing through it or adding to it, you get a nice screen format for records and an optional menuu at the top of the screen telling which keys do what to the cursor - much like the 'home' menu in Wordstar.

You can look at records in any one of a number of ways - the two most populat being the 'forms' and the 'summary' modes. The forms mode is the standard sort of 'cardbox' representation which lets you move through the data in each field by moving the cursor - and the IBM's Page Up and Page Down keys let you move from record to record.

The summary mode shows you all the fields and about 14 records at a time on the screen. You can then scroll the cursor up, down or across the data in any field or record.

Not surprisingly, the program includes a 'calculator' function in the command mode. Like dBase II, dBase III is a language, albeit a much friendlier one with many more learning tools, and this calculator function takes the form of print statements and arithmetic operators. So, to quickly get a simple add and divide equation done, you must type something like:

?(23+34+87)/89

A more powerful facility perhaps is the INDEX command - which I found a real help in getting records out of the database quickly. You establish an index by using a database that's already in use and the command:

INDEX ON FIELDNAME TO INDEX FILENAME

You can then use the index - which has been created as an NDX-extension file on disk with the Index Filename you have given it - to quickly get round the database you indexed. You do this by then saying:

SET INDEX TO INDEX FILENAME

and typing LIST - which will then proceed to list all the records in order according to whatever fieldname you originally specified with the INDEX ON command.

Verdict

By virtue of its power, user-friendliness and compatibility with dBase II, dBase III is well set to keep Ashton-Tate at the top of the serious PC software charts.

The dBase II Relationship

Blood runs thicker than marketing - and despite all that's been said, dBase II and III are brothers under the skin. Each is essentially a programming language, dBase III being more or less a superset of dBase II.

But if the two packages are brothers, dBase III definitely has to be considered the more personable and gregarious of the two.

Asking dBase II and III for the same thing will produce quite different results. Gone is the annoying parade of zeros that served only to intimidate the dBase II user when he asked for a simple thing like LISTing on a given index. And added to that same operation are helpful things like field names above the records.

Aside from the Assist and Help facilities, the other big difference between the programs is in the addition of a toggled menu when entering, modifying or adding records to a database. Although most of the information is about simple cursor controls, it helps reduce the vast emptiness of screen that terrified many a dBase II user.

Framework Phenomenon

You may think that because Framework is one of the best integrated software packaged for the PC and dBase III is arguably the best database, that a combination of the two would be ideal.

Well, you would be either wrong or very rich. Both Framework and dBase III can run together, but because each package has a minimum memory requirement of 256K, the total needed to use them together is 512K - and that's before you've entered any data. You would need at least 640K and probably a hard disc before you could really start to use the two packages properly.

This doesn't appear to be a problem for Ashton-Tate. The company's answer is to encourage Framework users, if they want something more than is offered by the database built into Framework, to use dBase II. The older package is almost as powerful as the new dBase III but only needs 128K to get going. And Ashton-Tate states that it will run 'beside' Framework so that you need only a few keystrokes to swap between the integrated package and dBase II.

The only problem with this tidy solution is that the people who've bought Framework for its user-friendliness will be demanding a simple-to-use database like dBase III. They'll be mightily confused if they have to jump from something gentle and friendly like Framework to the more esoteric work of dBase II.

However, it could be argued (and I'm sure it will be) that because Framework already has a simpler database facility built into it, the dBase II option is for people who have graduated beyond the Framework database and are willing to spend more time on learning it.

The Integrated Systems Factor

Perhaps the only cloud on dBase III's horizon is the question of how long standalone packages are going to survive against multi-function integrated suites, despite the weaknesses of their isolated sections.

At the moment, memory and storage requirements for an integrated system whose database power could approach dBase III's are very high but, as the price of memory and storage fall, the likelihood of an integral dBase III-type package grows.

Ashton-Tate would probably point out, however, that you can already integrate most of dBase III into Framework - although it would take something in the order of 640K and a hard disk to be effective.

The future of standalone software is, however, an issue that will affect all software houses.

A Comparison of dBase II (Left) and dBase III (right)

. USE Names
 
. LIST STRUCTURE
STRUCTURE FOR FILE:   A:NAMES     .DBF
NUMBER OF RECORDS:    00006
DATE OF LAST UPDATE:  01/01/80
PRIMARY USE DATABASE
 
FLD       NAME         TYPE WIDTH     DEC
001     NAME            C    010
002     ACCOUNT         N    004
** TOTAL **                00015
 
. SORT ON Account TO Temp DESC
SORT COMPLETE
 
. USE Temp
 
. SORT ON Name TO Multiple
SORT COMPLETE
 
. USE Multiple
 
. LIST
 
00001  AL            100
00002  BOB           102
00003  JIM           104
00004  JOHN          105
00005  JOHN          103
00006  SALLY         101
. USE Names
 
. LIST STRUCTURE
Structure for database : A.NAMES.dbf
Number of data records :       6
Date of last update    : 01/01/80
Field  Field name  Type  Length   Dec
    1  NAME           C      10
    2  ACCOUNT        N       4
** Total **                  15
 
 
 
. SORT ON Name. Account/D TO Multiple
100% Sorted           6 Records sorted
 
 
 
 
 
 
. USE Multiple
 
. LIST
 
Record#  NAME        ACCOUNT
      1  AL              100
      2  BOB             102
      3  JIM             104
      4  JOHN            105
      5  JOHN            103
      6  SALLY           101

A Sample Of The Extensive Help Menu

- maximum help -
DISPLAY
Syntax: DISPLAY
DISPLAY FOR <expression>
DISPLAY <expression list> FOR <expression>
DISPLAY NEXT <number of records> FOR <expression>
DISPLAY STRUCTURE
DISPLAY STATUS
DISPLAY FILE
Description: DISPLAY will show all or part of the database. With the proper phrase, DISPLAY will show the database structure, the processing status, the contents of other files.
Examples: DISPLAY
DISPLAY name, address, city FOR zip > '90000'
See Also: LOST,?
PgUp = screen, Esc = Help, Home = last menu, or ENTER command.

Geof Wheelwright

This article was converted to a web page from the following pages of Personal Computer News #078.

Personal Computer News #078 scan of page 34

Page 34

Personal Computer News #078 scan of page 35

Page 35