SQL modular es un método que combina la potencia de cálculo de un lenguaje de programación con las capacidades de manipulación de bases de datos de SQL . Las sentencias SQL modulares son sentencias SQL escritas en un módulo cliente SQL, que pueden ser llamadas como rutinas desde el código fuente del programa en el lenguaje anfitrión. Un archivo SQL estándar de lenguaje modular se compila en llamadas a una biblioteca de tiempo de ejecución SQL que interactúa con el sistema de gestión de bases de datos . Esto permite a los programadores llamar a sentencias SQL desde aplicaciones escritas en lenguajes de programación convencionales.
El uso del lenguaje de módulos es muy sencillo: coloque todo el código SQL en un módulo separado y defina una interfaz entre el módulo que contiene el código SQL y el programa anfitrión. [ 1 ]
El SQL modular está estrechamente relacionado con el SQL embebido . "Los módulos cliente SQL son colecciones autocontenidas de sentencias SQL. A diferencia del SQL embebido, en el que las sentencias SQL se insertan en el lenguaje de programación anfitrión, los módulos cliente SQL están separados del lenguaje anfitrión. El lenguaje anfitrión contiene llamadas que invocan el módulo, el cual a su vez ejecuta las sentencias SQL dentro de ese módulo." [ 2 ]
Cumplimiento del estándar SQL
El estándar SQL:2023 (ISO/IEC 9075-2:2023 Tecnología de la información — Lenguajes de bases de datos SQL — Parte 2: Fundamentos (SQL/Foundation), capítulo 13 [ 3 ] ) define un módulo SQL como un módulo cliente SQL , y el lenguaje en el que se llaman las consultas SQL se denomina lenguaje anfitrión . Los lenguajes anfitriones especificados son:
- Ada - Característica B111, “Lenguaje de módulo Ada”
- C - Característica B112, “Lenguaje de módulo C”
- COBOL - Característica B113, “Lenguaje de módulos COBOL”
- Fortran - Característica B114, “Lenguaje de módulo Fortran”
- MUMPS - Característica B115, “Módulo de lenguaje MUMPS”
- Pascal - Característica B116, “Lenguaje de módulos Pascal”
- PL/I - Característica B117, “Lenguaje de módulo PL/I”
(Todos los idiomas mencionados anteriormente son características opcionales, lo que significa que cada proveedor puede decidir qué idioma(s) admitir).
Sistemas de bases de datos que admiten el módulo SQL
Mimer SQL 11.0 y versiones posteriores para Linux , macOS , OpenVMS y Windows admiten el módulo SQL para C/C++, y Mimer SQL para OpenVMS también admite el módulo SQL para COBOL, Fortran y Pascal. [ 4 ]
Oracle 8.0 admitía SQL*Module para Ada, pero esta compatibilidad se eliminó en versiones posteriores. [ 5 ] SQL*Module es un lenguaje de módulos que admite el estándar de lenguaje Ada83 para Ada. [ 6 ]
Los lenguajes de programación compatibles son Ada, BASIC , C, COBOL, Fortran, Pascal y PL/I. [ 7 ]
Referencias
- ↑ "El concepto de lenguaje de módulos" . Guía del programador de SQL*Module para Ada, versión 8.0, capítulo 1. Introducción a SQL*Module . Oracle Corporation . Consultado el 30 de marzo de 2023 .
- ↑ Oppel, Andrew (noviembre de 2015). SQL: Guía para principiantes, cuarta edición (4.ª ed.). McGraw-Hill. pág. 544. ISBN 978-0071842594.
- ↑ "Estándar SQL 2023, Capítulo 13 Módulos de cliente SQL" . ISO/IEC 9075-2:2023 Tecnología de la información — Lenguajes de bases de datos — SQL — Parte 2: Fundamentos (SQL/Foundation) . ISO . Consultado el 5 de junio de 2023 .
- ↑ "Módulo SQL" . Manual del programador de Mimer SQL, última versión, Módulo SQL . Mimer SQL .
- ↑ "SQL*Module™ para Ada - Guía del programador" (PDF) . Oracle Corporation . Consultado el 19 de junio de 2023 .
- ↑ "Soporte de Ada en la versión 8" . Migración de bases de datos Oracle9i, versión 2 (9.2), capítulo 5. Compatibilidad e interoperabilidad . Oracle Corporation . Consultado el 30 de marzo de 2023 .
- ↑ "Oracle Rdb7™, Guía de programación SQL" (PDF) . Oracle Corporation . Consultado el 5 de junio de 2023 .
Enlaces externos
- Guía del programador de SQL*Module para Ada, versión 8.0
- Módulo SQL, Desarrollador SQL Mimer
- SQL
- lenguajes de programación declarativos
- Lenguajes de consulta
- Lenguajes de modelado de datos
- API de bases de datos
- Acceso a datos SQL