Information about Dbase
dBase was the first widely used database management system (DBMS) for microcomputers, published by Ashton-Tate for CP/M, and later on the Apple II, Apple Macintosh, UNIX[1], VMS[2], and IBM PC under DOS where it became one of the best-selling software titles for a number of years. dBase was slow to transition successfully to Microsoft Windows and gradually lost market share to competitors such as Paradox, Clipper, FoxPro, and Microsoft Access. dBase was sold to Borland in 1991, which sold the rights to the product line in 1999 to the newly-formed dBase Inc. In 2004, dBase Inc. changed its name to dataBased Intelligence, Inc.
Starting in the mid 1980s many other companies produced their own dialects or variations on the product and language. These included FoxPro (now Visual FoxPro), Arago, Force, dbFast, dbXL, Quicksilver, Clipper, Xbase++, FlagShip, Recital Terminal Developer, CodeBase, MultiBase and Harbour/XHarbour. Together these are informally referred to as xBase.
dBase's underlying file format, the .dbf file, is widely used in many other applications needing a simple format to store structured data.
Recent History
dBase has evolved into a modern object oriented language that runs on 32 bit Windows. It can be used to build a wide variety of applications including web apps hosted on a Windows server, Windows rich client applications, and middleware applications. dBase can access most modern database engines via ODBC drivers.dBase features an IDE with a Command Window and Navigator, a just in time compiler, a preprocessor, a virtual machine interpreter, a linker for creating dBase application .exe's, a freely available runtime engine, and numerous two-way GUI design tools including a Form Designer, Report Designer, Menu Designer, Label Designer, Datamodule Designer, SQL Query Designer, and Table Designer. Two-way Tools refers to the ability to switch back and forth between using a GUI design tool and the Source Code Editor. Other tools include a Source Code Editor, a Project Manager that simplifies building and deploying a dBase application, and an integrated Debugger. dBase features structured exception handling and has many built-in classes that can be subclassed via single inheritance. There are visual classes, data classes, and many other supporting classes. Visual classes include Form, SubForm, Notebook, Container, Entryfield, RadioButton, SpinBox, ComboBox, ListBox, PushButton, Image, Grid, ScrollBar, ActiveX, Report, ReportViewer, Text, TextLabel and many others. Database classes include Session, Database, Query, Rowset, Field, StoredProc and Datamodule classes. Other classes include File, String, Math, Array, Date, Exception, Object and others. dBase objects can be dynamically subclassed by adding new properties to them at runtime.
Origins
The original developer of dBase was Wayne Ratliff.[3] In 1978, while at the Jet Propulsion Laboratory, Ratliff wrote a database program in assembly language for CP/M based microcomputers to help him win the football pool at the office. He based it on Jeb Long's JPLDIS (Jet Propulsion Laboratory Display Information System) and called it "Vulcan," after Mr. Spock of Star Trek. According to Ratliff, the language in JPLDIS was a simple, command-driven language intended for interactive use on printing terminals. There is some evidence that JPLDIS was influenced by a mainframe database product called RETRIEVE.In early 1980, George Tate, of Ashton-Tate, entered into a marketing agreement with Ratliff. Vulcan was renamed to dBase, and the software quickly became a huge success.
dBase programming language
After porting Vulcan to the IMSAI 8080 and later to CP/M and MS-DOS (as dBase), Ratliff added commands to accommodate the video screen interface as well as commands for improved control of flow (such as DO WHILE/ENDDO) and conditional logic (such as IF/ENDIF).For handling data, dBase provided detailed procedural commands and functions to open and traverse records in data files (e.g., USE, SKIP, GO TOP, GO BOTTOM, and GO recno), manipulate field values (REPLACE and STORE), and manipulate text strings (e.g., STR() and SUBSTR()), numbers, and dates. Its ability to simultaneously open and manipulate multiple files containing related data led Ashton-Tate to label dBase a "relational database," even though it did not meet the criteria defined by Dr. Edgar F. Codd's relational model. (It could be characterized as a hybrid relational and navigational database).
dBase used a runtime interpreter architecture, which allowed the user to execute commands by typing them in a command line "dot prompt." Upon typing a command or function and pressing the return key, the interpreter would immediately execute or evaluate it. Similarly, program scripts (text files with PRG extensions) ran in the interpreter (with the DO command), where each command and variable was evaluated at runtime. This made dBase programs quick and easy to write and test because programmers didn't have to first compile and link them before running them. (For other languages, these steps were tedious in the days of single- and double-digit megahertz CPUs.) The interpreter also handled automatically and dynamically all memory management (i.e., no preallocating memory and no hexadecimal notation), which more than any other feature made it possible for a business person with no programming experience to develop applications.
Conversely, the ease and simplicity of dBase presented a challenge as its users became more expert and as professional programmers were drawn to it. More complex and more critical applications demanded professional programming features for greater reliability and performance, as well as greater developer productivity.
Over time, Ashton-Tate's competitors introduced so-called clone products and compilers that introduced more robust programming features such as user-defined functions (UDFs) to supplement the built-in function set, scoped variables for writing routines and functions that were less likely to be affected by external processes, arrays for complex data handling, packaging features for delivering applications as executable files without external runtime interpreters, object-oriented syntax, and interfaces for accessing data in remote database management systems. Ashton-Tate also implemented many of these features with varying degrees of success. Ashton-Tate and its competitors also began to incorporate SQL, the ANSI/ISO standard language for creating, modifying, and retrieving data stored in relational database management systems.
In the late 1980s, developer groups sought to create a dBase language standard (IEEE 1192). It was then that the language started being referred to as "Xbase" to distinguish it from the Ashton-Tate product. Hundreds of books have been written on dBase and Xbase programming. For a couple of years in the late 1980s, author Joseph Carrabis, who penned several dBase texts[4], was one of the ten top selling authors worldwide.
Today, implementations of the dBase language have expanded to include many features targeted for business applications, including the manipulation of the graphical user interface, manipulation of remote and distributed data, Internet functionality, and interaction with modern devices. Despite its functionality and ease of use, the dBase language's legacy of being "embedded" in a popular commercial product is one of the reasons it is not a dominant standard today.
Programming example
The following example opens an employee table ("empl"), gives every manager who supervises 1 or more employees a 10-percent raise, and then prints the names and salaries.USE empl REPLACE ALL salary WITH salary * 1.1 FOR supervises > 0 LIST ALL fname, lname, salary TO PRINT
- (comment: reserved words shown in CAPITALS for illustration purposes)
Another notable feature is the re-use of the same clauses for different commands. For example, the FOR clause limits the scope of a given command. (It is somewhat comparable to SQL's WHERE clause). Different commands such as LIST, DELETE, REPLACE, BROWSE, etc. could all accept a FOR clause to limit (filter) the scope of their activity. This simplifies the learning of the language.
dBase was also one of the first business-oriented languages to implement string evaluation (long before Perl)
i = 2 myMacro = "i + 10" i = &myMacro // i now has the value 12
Here the "&" tells the interpreter to evaluate the string stored in "myMacro" just like it was programming code. This is an example of a feature that made dBase programming flexible and dynamic, sometimes called "meta ability" in the profession. However, it could also be problematic for pre-compiling and for making programming code secure from hacking. However, dBase tended to target custom applications for small and medium companies where compile-based security was often less of an issue. For example, nobody would contemplate writing an operating system in the language.
Niches
Although the language has fallen out of favor as a primary business language, some find it an excellent interactive ad-hoc data transformation tool. Unlike SQL, one can easily break data transformations into small steps to analyze and visually inspect. (One can optionally disable such inspection using the PROTECT command. The PROTECT command is a proprietary encryption device designed for dBase.) dBase also allegedly makes it easy to incrementally collect existing interactive data manipulation commands into subroutines to become automated scripts, in contrast to competitors which can require starting from scratch to go from interactive mouse commands to program scripts. It could be described as a "keyboard-friendly" language, partly due to its being designed before the mouse became common.It allegedly fills the gap between formal RDBMS and array programming languages such as APL's modern derivatives (J, K, etc.) It is also often used with bulk data file preparation for shipment to external (other vendor) sites via protocols such as FTP and email.
It remained a popular teaching tool even after sales slowed because the text-oriented commands were easier to present in printed training material than the mouse-oriented competitors. (Mouse-oriented commands were added to the product over time, but the command language remained a popular de-facto standard while mousing commands tended to be vendor-specific.)
File formats
A major legacy of dBase is its .dbf file format, which has been adopted in a number of other applications. For example, the shapefile format developed by ESRI for spatial data in a geographic information system uses .dbf files to store feature attribute data. The term XBase is often used for the group of applications.dBase's database system was one of the first to provide a header section for describing the structure of the data in the file. This meant that the program no longer required advance knowledge of the data structure, but rather could ask the data file how it was structured.
A second filetype is the .dbt file format for memo fields. While character fields are limited to 254 characters each, a memo field is a 10-byte pointer into a .dbt file which can include a much larger text field. dBase was very limited in its ability to process memo fields, but some other xBase languages such as Clipper treat memo fields as strings just like character fields for all purposes except permanent storage.
dBase uses .ndx files for indexes. Some xBase languages include compatibility with .ndx files while others use different file formats such as .ntx used by Clipper and .idx/.cdx used by FoxPro.
References
External links
Topics in database management systems (DBMS)
| |
|---|---|
|
Concepts Database Database models Database storage Relational model Distributed DBMS ACID Null Relational database Relational algebra Relational calculus Database normalization Referential integrity Relational DBMS Primary key, Foreign key, Surrogate key, Superkey, Candidate key | |
|
Objects Trigger View Table Cursor Log Transaction Index Stored procedure Partition |
Topics in SQL Select Insert Update Merge Delete Join Union Create Drop Begin work Commit Rollback Truncate Alter |
| Implementations of database management systems | |
|
Types of implementations Relational Flat file Deductive Dimensional Hierarchical Object oriented Object relational Temporal XML data stores | |
|
Database products Object-oriented (comparison) Relational (comparison) |
Components Query language Query optimizer Query plan ODBC JDBC |
A database management system (DBMS) is computer software designed for the purpose of managing databases. Typical examples of DBMSs include Oracle, DB2, Microsoft Access, Microsoft SQL Server, PostgreSQL, MySQL, FileMaker and Sybase Adaptive Server Enterprise.
..... Click the link for more information.
..... Click the link for more information.
microcomputer (in the 1970s and 80s sometimes shortened to micro[2]) is most often taken to mean a computer with a microprocessor as its CPU. Another general characteristic of these computers is that they occupy physically small amounts of space.
..... Click the link for more information.
..... Click the link for more information.
Ashton-Tate (Ashton-Tate Corporation) was a US based software company best known for developing the popular dBASE database application. Ashton-Tate grew from a small garage-based company to become a multinational corporation with software development centers spread across
..... Click the link for more information.
..... Click the link for more information.
CP/M is an operating system originally created for Intel 8080/85 based microcomputers by Gary Kildall of Digital Research, Inc. Initially confined to single tasking on 8-bit processors and no more than 64 kilobytes of memory, later versions of CP/M added multi-user variations, and
..... Click the link for more information.
..... Click the link for more information.
Apple II (sometimes written as Apple ][ or Apple //) was the first popular microcomputer manufactured by Apple. Its direct ancestor was the Apple I, a limited production circuit board computer for electronics hobbyists which pioneered many features that made the Apple
..... Click the link for more information.
..... Click the link for more information.
Macintosh, commonly known as Mac, is a brand name which covers several lines of personal computers designed, developed, and marketed by Apple Inc. Named after the McIntosh variety of apple, the original Macintosh was released on January 24, 1984.
..... Click the link for more information.
..... Click the link for more information.
Unix (officially trademarked as UNIX®) is a computer operating system originally developed in 1969 by a group of AT&T employees at Bell Labs including Ken Thompson, Dennis Ritchie and Douglas McIlroy.
..... Click the link for more information.
..... Click the link for more information.
VMS may stand for:
..... Click the link for more information.
- OpenVMS and FreeVMS, a computer server operating system
- Variable-message sign, an electronic traffic sign often used on highways
- Video Monitoring Services
..... Click the link for more information.
IBM PC Series IBM Personal Computer XT • IBM Portable Personal Computer • IBM PCjr ?
IBM PC (model 5150)
Type Personal computer
Released August 12, 1981
Discontinued April 2, 1987
Processor Intel 8088 @ 4.
..... Click the link for more information.
IBM PC (model 5150)
Type Personal computer
Released August 12, 1981
Discontinued April 2, 1987
Processor Intel 8088 @ 4.
..... Click the link for more information.
DOS (from Disk Operating System) commonly refers to the family of closely related operating systems which dominated the IBM PC compatible market between 1981 and 1995 (or until about 2000, if Windows 9x systems are included): DR-DOS, FreeDOS, MS-DOS, Novell-DOS, OpenDOS, PC-DOS,
..... Click the link for more information.
..... Click the link for more information.
Microsoft Windows
Screenshot of Windows Vista Ultimate, the latest version of Microsoft Windows.
Company/developer: Microsoft Corporation
OS family: MS-DOS/9x-based, Windows CE, Windows NT
Source model: Closed source
..... Click the link for more information.
Screenshot of Windows Vista Ultimate, the latest version of Microsoft Windows.
Company/developer: Microsoft Corporation
OS family: MS-DOS/9x-based, Windows CE, Windows NT
Source model: Closed source
..... Click the link for more information.
Paradox is a relational database management system currently published by Corel Corporation. It was originally designed for DOS but a Windows version was released by Borland in 1992.
..... Click the link for more information.
..... Click the link for more information.
Clipper is a computer programming language that is used to create software programs that originally operated primarily under DOS. Although it is a powerful general-purpose programming language, it was primarily used to create database/business programs.
..... Click the link for more information.
..... Click the link for more information.
has multiple meanings:
..... Click the link for more information.
- Visual FoxPro - an object-oriented programming language and RDBMS, published by Microsoft, for Microsoft Windows.
- FoxPro 2 - a text-based procedural programming language and RDBMS, originally published by Fox Software and later by Microsoft, for MS-DOS,
..... Click the link for more information.
Microsoft Office Access, previously known as Microsoft Access, is a relational database management system from Microsoft which combines the relational Microsoft Jet Database Engine with a graphical user interface and software development tools.
..... Click the link for more information.
..... Click the link for more information.
Borland Software Corporation
Public (NASDAQ: BORL )
Founded California (1983)
Headquarters Austin, Texas (previously Cupertino, California)
Key people Tod Nielsen - CEO,
Niels Jensen,
Ole Henriksen,
Mogens Glad,
Philippe Kahn - Founders
..... Click the link for more information.
Public (NASDAQ: BORL )
Founded California (1983)
Headquarters Austin, Texas (previously Cupertino, California)
Key people Tod Nielsen - CEO,
Niels Jensen,
Ole Henriksen,
Mogens Glad,
Philippe Kahn - Founders
..... Click the link for more information.
19th century - 20th century - 21st century
1960s 1970s 1980s - 1990s - 2000s 2010s 2020s
1988 1989 1990 - 1991 - 1992 1993 1994
Year 1991 (MCMXCI
..... Click the link for more information.
1960s 1970s 1980s - 1990s - 2000s 2010s 2020s
1988 1989 1990 - 1991 - 1992 1993 1994
Year 1991 (MCMXCI
..... Click the link for more information.
20th century - 21st century
1960s 1970s 1980s - 1990s - 2000s 2010s 2020s
1996 1997 1998 - 1999 - 2000 2001 2002
Year 1999 (MCMXCIX
..... Click the link for more information.
1960s 1970s 1980s - 1990s - 2000s 2010s 2020s
1996 1997 1998 - 1999 - 2000 2001 2002
Year 1999 (MCMXCIX
..... Click the link for more information.
has multiple meanings:
..... Click the link for more information.
- Visual FoxPro - an object-oriented programming language and RDBMS, published by Microsoft, for Microsoft Windows.
- FoxPro 2 - a text-based procedural programming language and RDBMS, originally published by Fox Software and later by Microsoft, for MS-DOS,
..... Click the link for more information.
IDE: English, German, Spanish
Runtime: Above, French, Chinese, Russian, Czech, Korean
Status: Maintenance mode
Genre: Database Programming language
License: Microsoft EULA
Website: msdn.microsoft.
..... Click the link for more information.
Runtime: Above, French, Chinese, Russian, Czech, Korean
Status: Maintenance mode
Genre: Database Programming language
License: Microsoft EULA
Website: msdn.microsoft.
..... Click the link for more information.
Clipper is a computer programming language that is used to create software programs that originally operated primarily under DOS. Although it is a powerful general-purpose programming language, it was primarily used to create database/business programs.
..... Click the link for more information.
..... Click the link for more information.
Codebase is a term used in software development to refer to the whole collection of all source code used to build a particular application or component. As typically used, the codebase includes only human-written source code files, and not, e.g.
..... Click the link for more information.
..... Click the link for more information.
Harbour is a free software compiler for the xBase superset language often referred to as Clipper (the language that is implemented by the compiler CA-Clipper).
Harbour is a cross-platform compiler and is known to compile and run on MS-DOS, Microsoft Windows, OS/2 and Linux.
..... Click the link for more information.
Harbour is a cross-platform compiler and is known to compile and run on MS-DOS, Microsoft Windows, OS/2 and Linux.
..... Click the link for more information.
xHarbour is a free (GPL + exception supporting commercial applications) multi-platform (DOS, Microsoft Windows, Linux (32,64), Unix (32,64), Mac OS X) extended Clipper compiler, offering multiple GT (Graphic Terminals), including console drivers, GUIs (free such as HWGui, MiniGUI
..... Click the link for more information.
..... Click the link for more information.
xBase is the generic term for all programming languages that derive from the original dBASE (Ashton-Tate) programming language and database formats. These are sometimes informally known as dBASE "clones".
..... Click the link for more information.
..... Click the link for more information.
C. Wayne Ratliff (born 1946, Trenton, Ohio) wrote the database program Vulcan. Raised in Ohio and Germany, he now resides in the Los Angeles area.
From 1969 to 1982, Ratliff worked for the Martin Marietta Corporation in a progression of engineering and managerial positions.
..... Click the link for more information.
From 1969 to 1982, Ratliff worked for the Martin Marietta Corporation in a progression of engineering and managerial positions.
..... Click the link for more information.
19th century - 20th century - 21st century
1940s 1950s 1960s - 1970s - 1980s 1990s 2000s
1975 1976 1977 - 1978 - 1979 1980 1981
Year 1978 (MCMLXXVIII
..... Click the link for more information.
1940s 1950s 1960s - 1970s - 1980s 1990s 2000s
1975 1976 1977 - 1978 - 1979 1980 1981
Year 1978 (MCMLXXVIII
..... Click the link for more information.
Jet Propulsion Laboratory (JPL) is a NASA research center located in the cities of Pasadena and La Cañada Flintridge, near Los Angeles, California, USA. Managed by the California Institute of Technology (Caltech), it builds and operates unmanned spacecraft for the National
..... Click the link for more information.
..... Click the link for more information.
assembly language is a low-level language for programming computers. It implements a symbolic representation of the numeric machine codes and other constants needed to program a particular CPU architecture.
..... Click the link for more information.
..... Click the link for more information.
The Jet Propulsion Laboratory Display Information System (or JPLDIS) is a file management program written in FORTRAN.
JPLDIS is important because it was the inspiration and precursor to dBASE, arguably one of the most influential DBMS programs for early microcomputers.
..... Click the link for more information.
JPLDIS is important because it was the inspiration and precursor to dBASE, arguably one of the most influential DBMS programs for early microcomputers.
..... Click the link for more information.
This article is copied from an article on Wikipedia.org - the free encyclopedia created and edited by online user community. The text was not checked or edited by anyone on our staff. Although the vast majority of the wikipedia encyclopedia articles provide accurate and timely information please do not assume the accuracy of any particular article. This article is distributed under the terms of GNU Free Documentation License.
Herod_Archelaus