Call Level Interface

Last updated
Call Level Interface
AbbreviationCLI
StatusPublished
Year started1992;30 years ago (1992)
Organization The Open Group
Authors SQL Access Group, X/Open, The Open Group
Related standards ISO/IEC 9075-3:2003
Domain Application programming interfaces
Website publications.opengroup.org/c451

The Call Level Interface (CLI) is an application programming interface (API) [1] and software standard to embed Structured Query Language (SQL) code in a host program [2] as defined in a joint standard by the International Organization for Standardization (ISO) and International Electrotechnical Commission (IEC): ISO/IEC 9075-3:2003. [3] The Call Level Interface defines how a program should send SQL queries to the database management system (DBMS) and how the returned recordsets 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.

Contents

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 (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, and Fortran. [4]

History

The work with the Call Level Interface began in a subcommittee of the US-based SQL Access Group (SAG) [5] [6] [7] 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 (ANSI) standards committees in 1993. The standard has the book number ISBN   1-85912-081-4 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.

Related Research Articles

SQL is a domain-specific language used in programming and designed for managing data held in a relational database management system (RDBMS), or for stream processing in a relational data stream management system (RDSMS). It is particularly useful in handling structured data, i.e. data incorporating relations among entities and variables. SQL offers two main advantages over older read–write APIs such as ISAM or VSAM. Firstly, it introduced the concept of accessing many records with one single command. Secondly, it eliminates the need to specify how to reach a record, e.g. with or without an index.

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 application written using ODBC can be ported to other platforms, both on the client and server side, with few changes to the data access code.

The Graphical Kernel System (GKS) was the first ISO standard for low-level computer graphics, introduced in 1977. A draft international standard was circulated for review in September 1983. Final ratification of the standard was achieved in 1985.

PHIGS is an application programming interface (API) standard for rendering 3D computer graphics, considered to be the 3D graphics standard for the 1980s through the early 1990s. Subsequently, a combination of features and power led to the rise of OpenGL, which became the most popular professional 3D API of the mid to late 1990s.

In computing, the Oracle Call Interface (OCI) consists of a set of C-language software APIs which provide an interface to the Oracle database.

A database abstraction layer is an application programming interface which unifies the communication between a computer application and databases such as SQL Server, DB2, MySQL, PostgreSQL, Oracle or SQLite. Traditionally, all database vendors provide their own interface that is tailored to their products. It is up to the application programmer to implement code for the database interfaces that will be supported by the application. Database abstraction layers reduce the amount of work by providing a consistent API to the developer and hide the database specifics behind this interface as much as possible. There exist many abstraction layers with different interfaces in numerous programming languages. If an application has such a layer built in, it is called database-agnostic.

unixODBC is an open-source project that implements the ODBC API. The code is provided under the GNU GPL/LGPL and can be built and used on many different operating systems, including most versions of Unix, Linux, Mac OS X, IBM OS/2 and Microsoft's Interix.

Remote database access (RDA) is a protocol standard for database access produced in 1993 by the International Organization for Standardization (ISO). Despite early efforts to develop proof of concept implementations of RDA for major commercial remote database management systems (RDBMSs), this standard has not found commercial support from database vendors. The standard has since been withdrawn, and replaced by ISO/IEC 9579:1999 - Information technology -- Remote Database Access for SQL, which has also been withdrawn, and replaced by ISO/IEC 9579:2000 Information technology -- Remote database access for SQL with security enhancement.

The Data Access Manager (DAM) was a database access API for the classic Mac OS, introduced in 1991 as an extension to System 7. Similar in concept to ODBC, DAM saw little use and was eventually dropped in the late 1990s. Only a handful of products ever used it, although it was used for some extremely impressive demoware in the early 1990s. More modern versions of the classic Mac OS, and macOS, use ODBC for this role instead.

Borland Database Engine (BDE) is the Windows-based core database engine and connectivity software behind Borland Delphi, C++Builder, IntraBuilder, Paradox for Windows, and Visual dBASE for Windows.

SQLJ is a working title for efforts to combine Java and SQL. It was a common effort started around 1997 by engineers from IBM, Oracle, Compaq, Informix, Sybase, Cloudscape and Sun Microsystems.

The SQL/CLI, or Call-Level Interface, is an extension to the SQL standard is defined in SQL:1999, but also available in later editions such as ISO/IEC 9075-3:2003. This extension defines common interfacing components that can be used to execute SQL statements from applications written in other programming languages. The SQL/CLI extension is defined in such a way that SQL statements and SQL/CLI procedure calls are treated as separate from the calling application's source code.

Raima Database Manager

Raima Database Manager is an ACID-compliant embedded database management system designed for use in embedded systems applications. RDM has been designed to utilize multi-core computers, networking, and on-disk or in-memory storage management. RDM provides support for multiple application programming interfaces (APIs): low-level C API, C++, and SQL(native, ODBC, JDBC, ADO.NET, and REST). RDM is highly portable and is available on Windows, Linux, Unix and several real-time or embedded operating systems. A source-code license is also available.

RDM Server

RDM Server is an embeddable, heterogeneous, client/server database management system supporting both C/C++ and SQL APIs for programming flexibility. The databases can be disk resident and/or memory resident. RDM Server implements multi-user locking, hot database backup, and a fully ACID-compliant transaction logging system with automatic crash recovery. It is currently supported on many 32- and 64-bit enterprise and embedded operating systems. The database library can optionally be run in-process with the application, eliminating client/server remote procedure calls.

SQL:1999 was the fourth revision of the SQL database query language. It introduced many new features, many of which required clarifications in the subsequent SQL:2003. In the meanwhile SQL:1999 is deprecated.

SQL:2008 is the sixth revision of the ISO and ANSI standard for the SQL database query language. It was formally adopted in July 2008. The standard consists of 9 parts which are described in detail in SQL. The next iteration is SQL:2011

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, DEC, Tandem, Sun and HP.

SQL:2006 or ISO/IEC 9075:2006 standard is a revision part 14 of the ISO standard for the SQL database query language. It is not a revision of the complete SQL standard.

The Open Smart Grid Protocol (OSGP) is a family of specifications published by the European Telecommunications Standards Institute (ETSI) used in conjunction with the ISO/IEC 14908 control networking standard for smart grid applications. OSGP is optimized to provide reliable and efficient delivery of command and control information for smart meters, direct load control modules, solar panels, gateways, and other smart grid devices. With over 5 million OSGP based smart meters and devices deployed worldwide it is one of the most widely used smart meter and smart grid device networking standards.

SQL:2016 or ISO/IEC 9075:2016 is the eighth revision of the ISO (1987) and ANSI (1986) standard for the SQL database query language. It was formally adopted in December 2016. The standard consists of 9 parts which are described in some detail in SQL.

References

  1. "Chapter 1". Technical Standard - Data Management: SQL Call Level Interface (CLI). X/Open Company Ltd., U.K. 1995. p. 1. ISBN   1-85912-081-4.
  2. Stephens, Ryan; Plew, Ron; Jones, Arie (2011). Sams Teach Yourself SQL (5th ed.). Pearson Education. p. 349. ISBN   978-0672335419.
  3. "ISO/IEC 9075-3:2003". ISO. Retrieved 13 December 2014.
  4. Stephens, Ryan; Plew, Ron; Jones, Arie (2011). Sams Teach Yourself SQL (5th ed.). Pearson Education. p. 351. ISBN   978-0672335419.
  5. "Call-Level Interface". FOLDOC: Free On-Line Dictionary of Computing. FOLDOC. Retrieved 13 December 2014.
  6. http://dictionary.reference.com/browse/call-level+interface [ dead link ]
  7. "CLI Definition from PC Magazine Encyclopedia". PC Mag. Retrieved 13 December 2014. A database programming interface from the SQL Access Group (SAG), an SQL membership organization.