DBase 2000
The release dBASE Inc. called its first true product after taking dBASE over from Borland: announced in 1999 as dBASE 2000, shipped in December 2000 as dB2K, and renamed dBASE Plus in 2002.
Created by dBASE Inc., a KSoft subsidiary led by Alan A. Katz (building on Borland Visual dBASE 7)
“DBase 2000” is the name under which the next version of dBASE was announced in March 1999, when a group of dBASE developers took the product over from Inprise, the renamed Borland. The product did not ship under that name. It reached customers in December 2000 as dB2K, a 32-bit Windows database development environment from dBASE Inc. of Vestal, New York. It was sold as dB2K for about eighteen months, went through four numbered releases (0.1 to 0.4), and was renamed dBASE Plus in mid-2002.
dB2K was not a new language. It was the next step for Borland’s Visual dBASE 7, and it kept that product’s programming language: the classic dBASE command set combined with a class-based object system. During the dB2K project that language got its own name, dBL. What dB2K added was a visual data tool called dQuery/Web, two deployment features (Dynamic External Objects and source aliasing), and a subscription release model.
A Note on the Name and the Year
Catalogues that list “DBase 2000” with the year 1999 are recording the announcement, not a release. The evidence for each date is as follows:
| Date | Event | Source |
|---|---|---|
| March 1999 | KSoft says it is planning the next release “under the name dBASE 2000” | Computer Business Review, 14 March 1999 |
| May 1999 (year inferred) | A “dBASE2000” wish-list newsgroup is in use; the editor quotes a post made there on 21 May | The dBASE Developers Bulletin |
| 15 May 2000 | “dB2K Features and Fixes” appears on dbase.com | Archived dbase.com news page |
| 8 December 2000 | dB2K goes gold | Archived dbase.com announcement |
| 26 December 2000 | dB2K ships | Archived dbase.com announcement |
This page therefore uses 2000 as the year of first appearance. The archived pages do not say why the name changed from dBASE 2000 to dB2K.
History and Origins
From Borland to KSoft
Borland bought Ashton-Tate, and dBASE with it, in 1991. Its dBASE for Windows 5.0 came out in August 1994. According to Jean-Pierre Martel, editor of The dBASE Developers Bulletin, that product was built on Arago for Windows, which Borland had acquired along with the developer WordTech. A 32-bit rewrite, Visual dBASE 7, followed in 1997.
By 1998 Borland had renamed itself Inprise and moved dBASE into its InterBase subsidiary. Martel wrote that in February 1999 Inprise began laying off the dBASE team. On 14 March 1999, Computer Business Review reported that Inprise had announced “an exclusive international licensing agreement with Ksoft Inc, based in Johnson City, New York,” under which KSoft took over “all development, support and marketing for the Windows database and development tool.” The same report described KSoft as a company formed in 1995 and run by dBASE developer Alan Katz, which specialised in custom Windows and web development using Visual dBASE.
KSoft set up a subsidiary, dBASE Inc., to hold the product. dBASE Inc.’s later press releases describe the 1999 deal as an acquisition: the company “was founded in 1999 when it acquired both the dBASE and IntraBuilder technologies from Borland International.” Martel called it the first time a major piece of software had been handed to some of its own users.
Two maintenance releases first
The March 1999 report gave a tentative date of “late spring, early summer this year” for dBASE 2000, with quarterly releases after that. That schedule was not met. dBASE Inc. first issued two updates of the Borland products:
- Visual dBASE 5.7, the 16-bit product, announced on 27 July 1999 with year-2000 date fixes
- Visual dBASE 7.5, the 32-bit product. Its feature list was posted on dbase.com on 20 December 1999, and a later dBASE Inc. tutorial dates its release to February 2000. It fixed more than 130 bugs and added web classes that connected dBASE applications directly to a web server
dBASE Inc.’s own press release later said that these two “were primarily updates of earlier Borland releases” and that dB2K was “the first true dBASE Inc. product.”
dB2K ships
A preview page on dbase.com in November 2000 said dB2K was “winding up its final beta.” The company’s announcement gives the two dates that matter:
December 8, 2000 — the day dB2K went Gold. December 26, 2000 — the day dB2K Shipped.
The formal press release followed on 28 December 2000 and billed the product as “The Information Toolset.” The list price was $579, with an introductory price of $479. dB2K was sold as a one-year subscription that covered several releases, and the licence to use the software did not expire when the subscription did.
The first release was numbered 0.1, not 1.0. That number appears in the Windows registry key the product used (dBASE\dB2K\0.1), although the company’s own writers also called it “release 1.”
The Language: dBL
Until late 2000 the language had no name of its own. People called it “the dBASE language.” In October 2000 dBASE Inc. ran a contest asking customers to “help us name the object oriented language used in Visual dBASE 7.5 and dB2K.” The rules asked for a clever name, with Java and C# given as examples the judges liked. The contest closed on 22 October 2000 with more than 1,500 entries, the judges cut the list to eight, and an online vote ended on 27 November 2000. The result was announced as “The Language Has A Name: dBL!”
dBASE Inc. described dBL as a dynamic object language “similar to JavaScript,” running on a virtual machine. That comparison is the vendor’s. Structurally, dBL is two languages in one:
- The classic xBase layer: commands such as
USE,SET,DOand?, work areas, and.PRGprogram files. A dBASE III programmer would recognise it - The object layer: classes with single inheritance, properties, events and methods, code blocks, and a set of built-in classes for forms, reports and data access
Classic commands
The oldest dBASE output command still works at the Command window:
| |
Classes
Classes are declared with class ... of ... endclass. The example below follows the style of dBASE Inc.’s knowledgebase article on custom classes. It defines a reusable entry field and then a second class that inherits from it:
| |
:= assigns to a property that already exists and raises an error if it does not, which catches misspelled property names. The {; ... } form is a code block assigned to an event.
Data objects
Tables are reached through data classes instead of work areas. dBASE Inc. called this layer OODML, the object-oriented database manipulation language. This example, adapted from the knowledgebase guide for xBase programmers, opens a table, filters it and copies the result to a new table:
| |
A Query object produces a Rowset, and navigation, filtering, locking and editing are methods and properties of the rowset. Because the same classes sat on top of the Borland Database Engine (BDE), the same code could address dBASE tables, Paradox tables or an SQL server.
What dB2K Added
dQuery/Web
dQuery/Web was a design surface for building data modules by dragging tables onto it and linking them. From a data model it could produce a report with no further input (“No-Click Reports”) or generate a complete Windows or web application (“One-Click Windows” and “One-Click Web”). dBASE Inc. also presented it as a tool for moving data between database formats, because each table was just a query object regardless of the database behind it.
Dynamic External Objects (DEO)
Before dB2K, a compiled dBASE application was a single .EXE containing all of its compiled forms, reports and programs. DEO let the runtime load compiled object files (.PRO, .WFO, .REO, .CO and so on) from outside the executable. According to Ken Mayer’s article in the dB2K special issue of the Bulletin, the runtime looked in three places, in this order:
- The current folder
- Up to ten folders listed in the
[ObjectPath]section of the application’s.INIfile - Inside the
.EXEitself
A developer could therefore fix a form by sending the customer one new object file, without rebuilding or reinstalling the application. The feature was on by default and could be switched off in code:
| |
In release 0.1 the object path did not accept relative folder names, a limitation the same article noted.
Source aliasing
Source aliases gave folders of source code a logical name, in the same way a BDE alias names a database. The alias was defined in the development environment and written to DB2K.INI:
| |
Code could then refer to files through the alias instead of a fixed path:
| |
Mayer’s article credits the idea to Alan Katz. Aliases applied only in the development environment and were ignored once an application was built into an .EXE.
Smaller language and class changes
The published “dB2K 0.1 Features and Fixes” list also included:
- Drag-and-drop events and methods on forms and form controls
- An
Enumeratefunction, and a__version__preprocessor constant - A
PERSISTENToption forSET PROCEDURE, so a procedure file stays loaded afterCLOSE PROCEDURE - A
WEBoption for theBUILDcommand, marking an application as one that runs under a web server FOXPROas a table type forCREATE TABLE- A
Designerclass that exposed the internal design tools to dBL code
One CD for every language
dB2K was sold on a single “world CD”: the same executables were installed everywhere, and the display language came from separate resource files. This was not new with dB2K. According to a May 2001 dBASE Inc. article, Borland had unified the binaries in Visual dBASE 7, and dBASE Inc. had produced one CD for all countries since Visual dBASE 7.5. The same article said the dB2K world CD offered English, German, Italian, Spanish and Japanese. The November 2000 Bulletin also mentions a French runtime resource file.
Platform
dB2K was a 32-bit Windows product. dBASE Inc.’s November 2000 preview page said it produced applications “for Windows 2000, Windows ‘98, Windows ‘95, and Windows NT.” It used the Borland Database Engine for data access and shipped with Inno Setup for building installers.
dBASE Inc. said more than once that it intended to port the product to Linux. The 28 December 2000 press release lists “porting dB2K to Linux” among its future plans, and the July 2002 dBASE Plus announcement still speaks of “XML and Linux plans.” No source consulted for this page records a Linux release of dB2K.
Evolution
dB2K’s releases were tied to its subscription. The original plan was a CD every quarter. In March 2001 dBASE Inc. added the Gold Subscription, a higher tier that delivered builds online as they were ready. Standard subscribers continued to receive CDs.
| Release | Date | Notes |
|---|---|---|
| dB2K 0.1 | Shipped 26 December 2000 | dQuery/Web, DEO, source aliasing |
| dB2K 0.2 | 2001 (exact date not found) | Second CD release, inferred from dBASE Inc. calling 0.3 “the third CD version of dB2K” |
| dB2K 0.3 | CDs shipped the week of 10 December 2001 | AdHoc Web Query; older dBASE versions included on the CD. A 0.3 language reference was on dbase.com by 26 June 2001, so 0.3 builds were probably available online well before the CDs |
| dB2K 0.4 | CDs shipped February 2002 | navigateByMaster and navigateMaster rowset properties; automatic error logging to disk |
dBASE Inc. described the 0.4 rowset properties as an “OODML SET SKIP”: they restored the old SET SKIP behaviour of stepping through child rows of a parent-child relation, which the object data classes had lacked.
On 26 November 2001 dBASE Inc. announced Richard Lauer as its new president and chief executive, with founder Alan Katz serving as chief technology officer. On 6 February 2002 the company opened a second naming contest, this time for the product, with the statement that “dB2K needs a new name!” A cut-down edition for people migrating DOS applications, dBASE SE, appeared by April 2002, and an archived copy of its product page refers to the full product as “dB2K/dBASE PLUS.” On 1 July 2002 dBASE Inc. announced dBASE Plus as its new flagship. No later release under the dB2K name was found for this page.
Current Relevance
dB2K itself is long discontinued, but it was a stage in a product line that continued, and its additions stayed in it. The dBASE Plus announcement in 2002 was still promoting DEO, and the dUFLP library for dBASE Plus relied on source aliasing. dBASE Inc.’s own guides note that text written about dB2K “should work for dBASE Plus.”
Ownership changed twice more. InformationWeek reported in November 2004 that dBASE Inc. had taken the name dataBased Intelligence that August. On 2 April 2012 a new company, dBase LLC of Binghamton, New York, announced that it had been formed by investors and former dataBased Intelligence employees to continue the dBASE products. Its most recent release is named dBASE 2019.
In May 2026 The Register reported, under the headline “dBase debased,” that dBase LLC’s website and online store had gone offline. When this page was written in October 2026, dbase.com was responding again, including the old dBASE Inc. knowledgebase pages about dB2K that are cited here.
Why It Matters
dB2K is a small release in a long history, and it is interesting mainly for its circumstances. After two maintenance updates of the Borland products, it was the first new version of dBASE produced once the product had passed from a large vendor to a company founded by people who built applications with it. The result shows those priorities. The headline features were about deploying and maintaining applications and about reaching data over the web, and much of the new tooling was written in the product’s own language and shipped as source.
It is also the release in which the language was separated from the product. From late 2000 the product could be called dB2K, dBASE Plus or anything else, and the language had one fixed name, dBL. The name “dBASE 2000” survives mostly in early press coverage and in language lists compiled from it.
Sources and Caveats
The dates on this page come from Computer Business Review (14 March 1999), InformationWeek (9 November 2004), dBASE Inc. press releases and news pages preserved by the Internet Archive, and dBASE Inc. knowledgebase articles and issues of The dBASE Developers Bulletin still hosted on dbase.com. Product descriptions quoted from dBASE Inc. are the vendor’s own claims. Three points remain uncertain: the release date of dB2K 0.2 was not found, the date on which 0.3 first reached Gold subscribers online was not found, and sources differ on whether Visual dBASE 7.5 should be dated to December 1999 or February 2000.
Timeline
Notable Uses & Legacy
dQuery/Web
The drag-and-drop data-modelling tool that was the headline feature of dB2K. dBASE Inc. said all of the new tools in dB2K, including dQuery/Web, were written in dBL, and it shipped the dQuery/Web source code with the product as open source
dB2K Web Classes and Web Wizards
A dBL class library and a set of wizards for building data-entry, query and report applications that run behind a web server. dBASE Inc. shipped both with dB2K as source code. An AdHoc Web Query component for browser-based queries was announced in June 2001
dUFLP (dBASE Users' Function Library Project)
A free community code library maintained by Ken Mayer that began as a procedure file for dBASE IV 1.1. It was updated for dB2K in a series of releases during 2001 and 2002, and later reworked to use the source aliasing feature that dB2K introduced
The dBASE Developers Bulletin
A free web magazine edited by Jean-Pierre Martel. Its November 2000 "dB2K Special Issue" published working dB2K custom controls, including a grid-based combobox and a multi-column combobox, along with articles on the new deployment features