The
database administrator is a person having central control over
data and programs accessing that data. Duties of the database administrator
include:
- Scheme definition: the creation of the original database scheme. This involves writing a set of definitions in a DDL (data storage and definition language), compiled by the DDL compiler into a set of tables stored in the data dictionary.
- Storage structure and access method definition: writing a set of definitions translated by the data storage and definition language compiler
- Scheme and physical organization modification: writing a set of definitions used by the DDL compiler to generate modifications to appropriate internal system tables (e.g. data dictionary). This is done rarely, but sometimes the database scheme or physical organization must be modified.
- Granting of authorization for data access: granting different types of authorization for data access to various users
- Integrity constraint specification: generating integrity constraints. These are consulted by the database manager module whenever updates occur.
Database Users
The
database users fall into several categories:
- Application programmers are computer professionals interacting with the system through DML calls embedded in a program written in a host language (e.g. C, PL/1 and Pascal).
- These programs are called application programs.
- The DML precompiler converts DML calls (prefaced by a special character like $, #, etc.) to normal procedure calls in a host language.
- The host language compiler then generates the object code.
- Some special types of programming languages combine Pascal-like control structures with control structures for the manipulation of a database.
- These are sometimes called fourth-generation languages.
- They often include features to help generate forms and display data.
- Sophisticated users interact with the system without writing programs.
- They form requests by writing queries in a database query language.
- These are submitted to a query processor that breaks a DML statement down into instructions for the database manager module.
- Specialized users are sophisticated users writing special database application programs. These may be CADD systems, knowledge-based and expert systems, complex data systems (audio/video), etc.
- Naive users are unsophisticated users who interact with the system by using permanent application programs (e.g. automated teller machine).