Module SQL
   HOME

TheInfoList



OR:

Module SQL is a method of combining the
computing Computing is any goal-oriented activity requiring, benefiting from, or creating computer, computing machinery. It includes the study and experimentation of algorithmic processes, and the development of both computer hardware, hardware and softw ...
power of a
programming language A programming language is a system of notation for writing computer programs. Programming languages are described in terms of their Syntax (programming languages), syntax (form) and semantics (computer science), semantics (meaning), usually def ...
and the
database In computing, a database is an organized collection of data or a type of data store based on the use of a database management system (DBMS), the software that interacts with end users, applications, and the database itself to capture and a ...
manipulation capabilities of
SQL Structured Query Language (SQL) (pronounced ''S-Q-L''; or alternatively as "sequel") is a domain-specific language used to manage data, especially in a relational database management system (RDBMS). It is particularly useful in handling s ...
. Module SQL
statements Statement or statements may refer to: Common uses *Statement (computer science), the smallest standalone element of an imperative programming language * Statement (logic and semantics), declarative sentence that is either true or false *Statement, ...
are SQL statements written in an SQL client module, that can be called as routines from the host language program
source code In computing, source code, or simply code or source, is a plain text computer program written in a programming language. A programmer writes the human readable source code to control the behavior of a computer. Since a computer, at base, only ...
like a host language routine. An SQL standard Module Language file is compiled into calls to a SQL
runtime library A runtime library is a library that provides access to the runtime environment that is available to a computer program tailored to the host platform. A runtime environment implements the execution model as required for a development environme ...
that interacts with the
Database management system In computing, a database is an organized collection of data or a type of data store based on the use of a database management system (DBMS), the software that interacts with end users, applications, and the database itself to capture and an ...
. This allows programmers to call SQL statements from applications written in regular programming languages. Using Module Language is very straightforward: place all SQL code in a separate module, and define an interface between the module containing the SQL code and the host program. Module SQL is closely related to
Embedded SQL Embedded SQL is a method of combining the computing power of a programming language and the database manipulation capabilities of SQL. Embedded SQL statements are SQL statements written inline with the program source code, of the host language. T ...
. "SQL client modules are self-contained collections of SQL statements. Unlike embedded SQL, in which the SQL statements are inserted into the host programming language, SQL client modules are separate from the host language. The host language contains calls that invoke the module, which in turn executes the SQL statements within that module."


SQL Standard Compliance

The SQL:2023 standard (ISO/IEC 9075-2:2023 Information technology — Database languages SQL — Part 2: Foundation (SQL/Foundation), chapter 13) defines an SQL module as an ''SQL client module'', and the language in which SQL queries are called is referred to as the ''host language''. Specified host languages are: * Ada - Feature B111, “Module language Ada” * C - Feature B112, “Module language C” *
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 ...
- Feature B113, “Module language COBOL” * Fortran - Feature B114, “Module language Fortran” *
MUMPS MUMPS ("Massachusetts General Hospital Utility Multi-Programming System"), or M, is an imperative, high-level programming language with an integrated transaction processing key–value database. It was originally developed at Massachusetts Gen ...
- Feature B115, “Module language MUMPS” * Pascal - Feature B116, “Module language Pascal” *
PL/I PL/I (Programming Language One, pronounced and sometimes written PL/1) is a procedural, imperative computer programming language initially developed by IBM. It is designed for scientific, engineering, business and system programming. It has b ...
- Feature B117, “Module language PL/I” (All the languages listed above are optional features, which means that each vendor can decide which language(s) to support.)


Database systems that support module SQL


Mimer SQL Mimer SQL is a proprietary SQL-based relational database management system produced by the Swedish company ''Mimer Information Technology AB'' (Mimer AB), formerly known as ''Upright Database Technology AB''. It was originally developed as a res ...

Mimer SQL 11.0 and later for
Linux Linux ( ) is a family of open source Unix-like operating systems based on the Linux kernel, an kernel (operating system), operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically package manager, pac ...
,
macOS macOS, previously OS X and originally Mac OS X, is a Unix, Unix-based operating system developed and marketed by Apple Inc., Apple since 2001. It is the current operating system for Apple's Mac (computer), Mac computers. With ...
,
OpenVMS OpenVMS, often referred to as just VMS, is a multi-user, multiprocessing and virtual memory-based operating system. It is designed to support time-sharing, batch processing, transaction processing and workstation applications. Customers using Op ...
and
Windows Windows is a Product lining, product line of Proprietary software, proprietary graphical user interface, graphical operating systems developed and marketed by Microsoft. It is grouped into families and subfamilies that cater to particular sec ...
support module SQL for C/C++, and Mimer SQL for
OpenVMS OpenVMS, often referred to as just VMS, is a multi-user, multiprocessing and virtual memory-based operating system. It is designed to support time-sharing, batch processing, transaction processing and workstation applications. Customers using Op ...
also supports module SQL for COBOL, Fortran and Pascal.


Oracle Database Oracle Database (commonly referred to as Oracle DBMS, Oracle Autonomous Database, or simply as Oracle) is a proprietary multi-model database management system produced and marketed by Oracle Corporation. It is a database commonly used for ru ...

Oracle 8.0 supported SQL*Module for Ada but support has been removed in later versions. SQL*Module is a module language that supports the Ada83 language standard for Ada.


Oracle Rdb

Supported host languages are Ada,
BASIC Basic or BASIC may refer to: Science and technology * BASIC, a computer programming language * Basic (chemistry), having the properties of a base * Basic access authentication, in HTTP Entertainment * Basic (film), ''Basic'' (film), a 2003 film ...
, C, COBOL, Fortran, Pascal and PL/I.{{cite web , url=https://download.oracle.com/otn_hosted_doc/rdb/pdf/gsp.pdf , title=Oracle Rdb7™, Guide to SQL Programming , publisher=Oracle Corporation , accessdate=2023-06-05


References


External links


SQL*Module for Ada Programmer's Guide, Release 8.0

Module SQL, Mimer SQL Developer
SQL Declarative programming languages Query languages Data modeling languages Database APIs SQL data access