Ever since Codd (1970) first formulated the relational model, developers have been working on a database language based on the relational model. The early eighties saw the first commercial implementations of a language interface of this type under the name SQL (Structured Query Language). SQL was first standardized by the International Organization for Standardization in 1987 (ISO/IEC 9075:1987).
Today, SQL is the most widespread language for processing relational databases. In practice, a database system is referred to as relational if it supports the SQL interface.
In SQL, data is mapped to tables in the same way as in the relational model. Here, data is queried, inserted, updated or deleted. Complex database operations can be formulated by linking tables or the result sets of several different queries.
The basics of the SQL language for relational databases are easily learned and yet it is still suited for complex applications. The English language is used as the basis for the formulation of database operations. SQL includes language resources for simple, setoriented basic operations to which all manipulation of data can be reduced. Unlike the procedural languages used with non-relational database systems, SQL is a descriptive language. This means the user describes the result of a database operation in a set-oriented form (as in the relational model) rather than the various steps which lead to this result. A single SQL statement can thus lead to a number of operations on the database, which would require a large number of statements in a record-oriented language.
SESAM/SQL is based on the ISO/IEC 9075:<year> standards, in short: the SQL standard. The current standard is ISO/IEC 9075:2008, in short: SQL08.
SESAM/SQL includes a wide range of standardized SQL language resources for aspects such as
data definition including the administration of access rights
data manipulation
transaction management
dynamic SQL.
The ISO/IEC 9075:1992 standard distinguishes three levels of conformance: Entry SQL, Intermediate SQL and Full SQL. SESAM/SQL conforms fully with Entry SQL and also includes important functions from Intermediate SQL and Full SQL.
The current standard has not adopted this three-level subdivision. Core SQL has been introduced as the language core. Core SQL is a genuine superset of Entry SQL and is fully supported by SESAM/SQL.
In addition to the SQL functions defined by the standard, SESAM/SQL has its own SQL language resources for handling functions which have not been standardized, such as
processing of multiple columns
administration of storage structures
administration of user entries
execution of utility statements
Utility statements are statements which use SQL syntax and which provide utility functions for database administration, for instance for generating, loading, unloading, copying and reorganizing databases.
When users compile SQL programs, they can select the scope of the SQL language supported, thus allowing the development of portable applications.
SESAM/SQL allows SQL statements to be used in a number of different environments:
within the host language COBOL as embedded SQL statements (embedded SQL=ESQL).
within DRIVE, a 4th-generation programming language.
via the utility monitor, which provides a menu-driven interface for database administration.
via the ADO technology defined by Microsoft (ActiveX Data Objects) and the ADO.NET interface in client applications on Windows systems.
via the JDBC interface for access to SESAM/SQL from Java programs or Java applets on any platform.
via the PDO driver of SESM/SQL for the PHP interface (PHP: Hypertext Processor) on an Apache Webserver in an Application Unit under Linux on a FUJITSU Server BS2000 of the SE Series.
SESAM/SQL uses the SQL language resources for defining and manipulating data in accordance with the standard and provides all the important database administration functions using SQL syntax. SQL thus represents a standardized, uniform language for the various user groups such as end users, application programmers and database administrators, thus facilitating the task of writing portable database applications. The utility monitor is a component part of SESAM/SQL and provides a simple interface for all database administration tasks.
Figure 1: SQL interface