The Call Level Interface (CLI) is an
application programming interface
An application programming interface (API) is a way for two or more computer programs to communicate with each other. It is a type of software interface, offering a service to other pieces of software. A document or standard that describes how t ...
(API) and software standard to embed Structured Query Language (
SQL) code in a host program as defined in a joint standard by the
International Organization for Standardization (ISO) and
International Electrotechnical Commission
The International Electrotechnical Commission (IEC; in French: ''Commission électrotechnique internationale'') is an international standards organization that prepares and publishes international standards for all electrical, electronic and r ...
(IEC): ISO/IEC 9075-3:2003. The Call Level Interface defines how a program should send
SQL queries to the
database management system
In computing, a database is an organized collection of data stored and accessed electronically. Small databases can be stored on a file system, while large databases are hosted on computer clusters or cloud storage. The design of databases span ...
(DBMS) and how the returned
recordset A recordset is a data structure that consists of a group of database records, and can either come from a base table or as the result of a query to the table.
The concept is common to a number of platforms, notably Microsoft's Data Access Objects ...
s should be handled by the application in a consistent way. Developed in the early 1990s, the API was defined only for the programming languages
C and
COBOL
COBOL (; an acronym for "common business-oriented language") is a compiled English-like computer programming language designed for business use. It is an imperative, procedural and, since 2002, object-oriented language. COBOL is primarily us ...
.
The interface is part of what
The Open Group, publishes in a part of the
X/Open Portability Guide, termed the Common Application Environment, which is intended to be a wide standard for programming open applications, i.e., applications from different programming teams and different vendors that can interoperate efficiently. SQL/CLI provides an international standard implementation-independent CLI to access SQL databases.
Client–server tools can easily access databases through
dynamic-link libraries (DLL). It supports and encourages a rich set of client–server tools.
The most widespread use of the CLI standard is the basis of the
Open Database Connectivity
In computing, Open Database Connectivity (ODBC) is a standard application programming interface (API) for accessing database management systems (DBMS). The designers of ODBC aimed to make it independent of database systems and operating systems. An ...
(ODBC) specification, which is widely used to allow applications to transparently access database systems from different vendors. The current version of the API, ODBC 3.52, incorporates features from both the ISO and X/Open standards. Examples of languages that support Call Level Interface are ANSI C,
C#,
Visual Basic .NET (VB.NET),
Java,
Pascal
Pascal, Pascal's or PASCAL may refer to:
People and fictional characters
* Pascal (given name), including a list of people with the name
* Pascal (surname), including a list of people and fictional characters with the name
** Blaise Pascal, Fren ...
, and
Fortran.
History
The work with the Call Level Interface began in a subcommittee of the US-based
SQL Access Group
The SQL Access Group (SAG) was a group of software companies that was formed in 1989 to define and promote standards for database portability and interoperability. Initial members were Oracle Corporation, Informix, Ingres
Jean-Auguste-Domini ...
(SAG)
In 1992, it was initially published and marketed as
Microsoft's ODBC API. The CLI specification was submitted as to the ISO and
American National Standards Institute
The American National Standards Institute (ANSI ) is a private non-profit organization that oversees the development of voluntary consensus standards for products, services, processes, systems, and personnel in the United States. The organi ...
(ANSI) standards committees in 1993. The standard has the book number and the internal document number is C451.
ISO SQL/CLI is an addendum to 1992 SQL standard (
SQL-92). It was completed as ISO standard ISO/IEC 9075-3:1995 Information technology—Database languages—SQL—Part 3: Call-Level Interface (SQL/CLI). The current SQL/CLI effort is adding support for SQL3.
In the fourth quarter of 1994, control over the standard was transferred to the
X/Open Company, which significantly expanded and updated it. The X/Open CLI interface is a superset of the ISO
SQL CLI.
References
External links
Online definition of CLIat
The Open Group webpage
SQL
Open Group standards
{{database-stub