The dBASE Book

Updated: April 29, 2013

This is where I will post any information about The dBASE Book, which is now available for order (The Third Edition).

Cover Art by Jean-Pierre Martel

The Third Edition -- Why? What Is In it?

From the back cover of both volumes of the Third Edition of The dBASE Book:

Learn how to use dBASE PLUSí extensive Object Oriented Programming (OOP) Techniques to manage your data and create exciting and vibrant Windows applications.

The dBASE Book is an exhaustive look at the tools and programming techniques that can have you creating proper OOP applications in a quick and easy manner. Using this book you will easily master these techniques and will discover some undocumented commands and features.

The Third Edition of this book includes corrections to text and code samples, updates for versions of dBASE up through dBASE PLUS 2.8, including a new chapter on the Windows UAC features now in the software and working with the UAC (rather than against it), and a more extensive look at deploying your application properly.

Where Can I Purchase The Book, and At What Price?

The book is available in the following formats, from the following sources:

Printed PDF
Volume 1:  CreateSpace: $50 (US)
Amazon $50 (US)
ISBN: 978-0-9892875-0-0
Distribly ($35 US)
ISBN: 978-0-9892875-4-8
Volume 2:  CreateSpace: $40 (US)
Amazon $40 (US)
ISBN: 978-0-9892875-1-7
Distribly ($30 US)
ISBN: 978-0-9892875-5-5

Note that the printed version of The dBASE Book (vols 1 and 2) is available on in the US and in various other countries (,,,,, and It should be available in other online stores soon as well.

I tried to work with Amazon's Kindle format, but they are way too picky, having issues with:

Because of these issues, I disabled the sales of the Kindle versions. Both volumes are available in electronic form via Distribly (see above) as PDFs (which match the printed version exactly ...).

Note: If you wish to follow along with the code in the book, the source code is below (click the "Source Code" link).

Questions and Answers (There are always questions ...)
Tables of Contents (In case you would like to get an idea what is covered ...)
Reviews (Voluntary reviews of the book ...)
Errata (No author is perfect, this is where any errors are explained, corrected, etc.)
Source Code (The source code used in examples for the book)
Contact the author (email link ...)

Questions and Answers

Q: Why did you change publishers?
A: AuthorHouse changed their setup fees dramatically, and with the book becoming large enough it needed to be split into two volumes, it would have been prohibitive for me to work with them again. This is not a slam against AuthorHouse, but I have to look at my own finances and what I can afford to do. CreateSpace, owned by has many good features, including the lack of any setup fees, and the ability to sell the book internationally.

Q: Why does this book not cover dBASE PLUS 8 (or 9), and the ADO data objects?
A: dBASE PLUS 8 was released as I was finishing the chapters on deploying an application under dBASE PLUS 2.8. The changes in dBASE PLUS 8 are huge, and would have required a complete rewrite of various parts of the book. I had planned on a 4th edition, but sales have not been high, so it is unlikely there will be a 4th edition anytime in the near future. This takes a lot of effort, and as the good folk at dBASE changed the software by adding ADO (among other things) the UI is completely different in appearance. I would effectively have to rewrite large portions of the book ... and unless it is worth my time financially to do so, it is not likely to happen.

Q: How many copies do you anticipate selling?
A: I have no idea how many I will sell. I hope I sell enough to make at least a bit of profit, but this book is very much a "niche market" book.

Q: How big is a print run?
A: The beauty of working with a Print on Demand shop is that I don't have to be concerned with this -- copies are printed when orders come in. This means a smaller profit for me, but it means I do not have to be concerned with warehousing, handling orders, and shipping of books (which gives me time to work on other ventures). If I knew I could sell, say, 100,000 copies, then I might have considered a different print option, but I can't say how many I will sell ... The market isn't as large as it once was.

Q: Can I get the book translated to <MyLanguage>?
A: Sorry, but the cost of translation, compared to the potential number of sales in any language other than English, is not enough to pay for itself. Translation for a book this size (which is over 800 pages, and very technical by its nature) is really expensive.

Q: What about Electronic versions of the book?
A: I tried to have a Kindle version of the book, but as noted above, Kindle format does not handle some things very well. I finally have worked out a way to get a PDF version out for sale. See above. The big advantages to the PDF version: The appearance should be identical to the book (and the screen shots will be in color); and if you want to copy and paste code samples into the Command Window or Source Code Editor, you can (which was not doable with the Kindle version).

Q: I purchased the first (or second) edition, can I get a discount on the third?
A: No. I have no way of tracking who purchased what, and frankly I would make less money off book sales if I did this. I'm not making that much as it is ...

Table of Contents

I have been asked for the Table of Contents to give folk some idea of the topics covered in the book. I can't see how that could hurt, and might help get more interest in the book, so ...

     The dBASE Book, Third Edition, Volume 1, Table of Contents
     The dBASE Book, Third Edition, Volume 2, Table of Contents

(These are PDF files ... )


The following are from folk who have received their copy of the (first edition of the) book, and used with their permission ...

"An hour ago I received your book at my home address here in the Netherlands.

I don't have words enough to let you know how glad I am with this book. So complete and so proving where dBASE is able to do with. It is in one word GREAT!!

Thank you very much and also all they who have helped you with this." -- Wim Huizing, Netherlands

"Got your book a week ago. Was hoping for insights comparable to thoes in books like Ted Blue's , and Rhinehart's; I was apprehensious.

My expectations were exceeded!!

I have used dbase since dbII summer of 84.I am now writting a major app for a network, my first net work app. Your book has given me more confidence, and is a permanent part of my desk.

This book, I think, will do alot for dbase and dbase community!" -- Donald R. Plum

This review came in email yesterday, and was posted on the newsgroups, in French. The translation in English the reviewer sent me was done by Google and not very good. Luckily I know other folk, and J. P. Martel took the time to translate it for me. Thanks to both of you!

Excellent book by Ken Mayer. Nothing to do with Ted Blue's "Getting Started".

The goal of Ken's book is to really help the 'average' dBASE developer. It is full of details on the difficulties which one meets when upgrading from dBASE II, III or IV to object-oriented programming and on the multiple possibilities offered by dBASE PLUS 2.5. Even I, who is not very good in English, was able to understand the book with no particular effort.

The return on investment when one buys that book is a positive one. Thanks to that book, I was able to debug a program that used to freeze for reasons that I couldn't understand. Step-by-step, the author explains his subjects, with an obvious pleasure to be helpful.

This is a book to place into the hands of anyone who knows how to use the procedurial language of the DOS dBASE but who have difficulties when it comes to develop programs using OOP.

A French translation would be welcome: however that one is already a formidable one.

I must say that I have no interest in the promotion of that book. I am only giving my impression as a developer fluent in dBASE-IV 2.0 but who have (or had?) problems with the latest version of dBASE. dBASE is already a formidable tool and it is pity that it has lost it notoriety in France. With that book, dBASE can appeal and win back those who used to like that development platform.

If you are already fluent with Windows' API calls, SQL, OOP, Interbase and Oracle, that book might be slightly too light reading for you. However that was not the author's intent to write a book for experts only.

Before I had taken my decision, I hesitated to buy that book because if its price. Now that I have decided to buy it, thrust me: you will be satisfied of the profitability of your investment.

Of course, this opinion binds only me. Since I've also bought books previously published about dBASE (in French as well as in English), which often only describe the basic features of the program and often ignore or look superficially at how to program on that platform, I think it is useful for me to share my view about this new book.

I was able to unravel when upgrading from dBASE 5.5 to 5.7, but since dBASE 7.x I had the impression to have been set aside (development being not the essential part of my job). In this book, we feel the author's will to help us to migrate from old DOS habits to the new powerful object-oriented way of creating programs.

My only regret is that I didn't order that book directly from the author's web site. I thought that if I order it from, I would get it within 48 hours: actually, it took 15 days to be delivered to me. I don't think that it would have taken more time ordering from Ken Mayer's web site.

This book is the one to own to rediscover the joy of programming with dBASE, thanks to the author's clear and handy explanations.

M. Abraham.


I have created some pages that deal with errata -- discussion of minor problems in the book, or changes in the software between getting the manuscript to the publisher and newer releases of the software. This is in a PDF file format, which you can print. It is not large.
Last Date Updated: August 27, 2007

     dBASE Book Errata Pages (Second Edition)

     dBASE Book Errata Pages (First Edition -- for those who have not "upgraded")

(This is a PDF file ... )

Source Code

The source code for the Third Edition is here: Source Code for the Third Edition.

Note: You may wish to download from my main dBASE page an update to the Project Explorer that was never released by dBASE, LLC -- they have given me permission to make this available. Go to this page and click the "Source Code" section at the end: Ken's dBASE Page. This is only for dBASE Plus 2.8 ...

The source code for the Second Edition is here: Source Code for the Second Edition.

This is in a .zip file, and when unzipping it, it is best to find a location, and then use the option to "Use folder names" (or whatever it is called for the app you use for unzipping files). This will create folders for the chapters that have source code, and place the files in those folders. For example, using WinZip (which is my software of choice for this), clicking the Extract button on the main form (after opening the file in WinZip, of course):

Extract Files

If you click the "new folder" button, create a folder on your hard drive (such as "dBASEBook1_SourceCode"), then select that, click the "Unzip" button, and there you are.:

All the files will be in folders contained within the new folder you created. In dBASE, you can then go to those folders using the Navigator, and the "Look in:" combobox ...

Note: The source code is not really useful without the book, but if you really want to download it anyway, go ahead. Not all of the sample code in the book is included. The shorter code samples are ones that can be entered easily enough. The zip file includes the more complex code (there are places where the code samples cover several pages ...) and some of the custom classes, forms, etc., that are used in the book.

Contact the Author

Drop Ken a note:
(NOTE: Please do not send "I need help with my program ..." type questions, for technical support/programming questions, please use the dBASE newsgroups -- visit the dataBI website for details ...)

Ken's dBASE Books Page
Ken's dBASE Page