Database Management Systems

A DBMS is a software system that is responsible for managing all aspects of a database, at all levels. In particular, a DBMS should provide the following features, and perhaps more:

  • A mechanism for defining the structure of a database, in the form of a data definition language, or DDL.

  • A mechanism for data manipulation, including data access, sorting, searching, and filtering. This takes the form of a data manipulation language, or DML.

  • Interaction with a high-level host language or host application, allowing programmers to write database applications designed for specific purposes. The host language can be a standard programming language, such as C or Visual Basic, or a database application language, such as Microsoft Access.

  • Efficient and correct multiuser access to the data.

  • Effective data security.

  • Robustness; that is, the ability to recover from system failures without data loss.

  • A data dictionary , or data catalog. This is a database (in its own right) that provides a list of the definitions of all objects in the main database. For instance, it should include information on all entities in the database, along with their attributes and indexes. This “data about data” is sometimes referred to as metadata. The data dictionary should be accessible to the user of the database, so that he or she can obtain this metadata.

Get Access Database Design and Programming, Second Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.