SQL provides a standard language which can be used by an application to define and access databases. Figure 8.1 illustrates an application which uses SQL. This application is shown using X as its user interface. The X client application provides the SQL implementation with SQL statements and the SQL implementation provides the responses. The X application interacts with the SQL implementation by using either Embedded SQL or an application programming interface defined by the SQL Module Language.
The SQL implementation interacts with the operating system which provides the means of accessing local files containing the database. The SQL implementation may accomplish local file system access in several ways. It may make use of the normal file system access procedures provided by the host operating system and used by end user applications, or it may directly access the mass storage device forsaking normal file system access procedures, or it may use a combination of the two techniques. By not using the normal file system access procedures, some SQL implementations attempt to improve performance.