The Role of SQL
Added 29 Jul 2008
SQL is not itself a database management system, nor is it a stand-alone product. You cannot go into a computer store and “buy SQL.” Instead, SQL is an integral part of a database management system, a language and a tool for communicating with the DBMS. Figure 1-2 shows some of the components of a typical DBMS, and how SQL acts as the glue that links them together.
The database engine is the heart of the DBMS, responsible for actually structuring, storing, and retrieving the data in the database. It accepts SQL requests from other DBMS components—such as a forms facility, report writer, or interactive query facility—from user-written application programs, and even from other computer systems. As the figure shows, SQL plays many different roles:
- SQL is an interactive query language.
Users type SQL commands into an interactive SQL program to retrieve
data and display it on the screen, providing a convenient, easy-to-use
tool for ad hoc database queries.
- SQL is a database programming language.
Programmers embed SQL commands into their application programs to
access the data in a database. Both user written programs and database
utility programs (such as report writers and data entry tools) use this
technique for database access.
- SQL is a database administration language.
The database administrator responsible for managing a minicomputer or
mainframe database uses SQL to define the database structure and
control access to the stored data.
- SQL is a client/server language.
Personal computer programs use SQL to communicate over a network with
database servers that store shared data. This client/server
architecture has become very popular for enterprise-class applications.
- SQL is an Internet data access language.
Internet web servers that interact with corporate data and Internet
applications servers all use SQL as a standard language for accessing
corporate databases.
- SQL is a distributed database language.
Distributed database management systems use SQL to help distribute data
across many connected computer systems. The DBMS software on each
system uses SQL to communicate with the other systems, sending requests
for data access.
- SQL is a database gateway language. In a computer network with a mix of different DBMS products, SQL is often used in a gateway that allows one brand of DBMS to communicate with another brand.