by Dinesh Thakur

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, Pascal): These programs are called Application Programs. The DML Precompiled 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 which to 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).