SQL incorporado - Embedded SQL

Embedded SQL es un método de combinar el cálculo de potencia de un lenguaje de programación y las bases de datos de manipulación de las capacidades de SQL . Las sentencias SQL incrustadas son sentencias SQL escritas en línea con el código fuente del programa , del lenguaje principal. Las sentencias de SQL incorporado son analizadas por un preprocesador de SQL incorporado y reemplazadas por llamadas del lenguaje principal a una biblioteca de código . La salida del preprocesador continuación, se compila por el anfitrión compilador . Esto permite a los programadores incrustar sentencias SQL en programas escritos en cualquier número de lenguajes como C / C ++ , COBOL y Fortran . Esto difiere de los lenguajes de programación derivados de SQL que no pasan por preprocesadores discretos, como PL / SQL y T-SQL .

El comité de estándares SQL definió el estándar SQL incorporado en dos pasos: se definió un formalismo llamado Module Language , luego el estándar SQL incorporado se derivó del Module Language. El estándar SQL define la incrustación de SQL como SQL incrustado y el lenguaje en el que se incrustan las consultas SQL se denomina lenguaje host . Un lenguaje host popular es C. El lenguaje host C y SQL incorporado, por ejemplo, se llama Pro * C en los sistemas de administración de bases de datos Oracle y Sybase , ESQL / C en Informix y ECPG en el sistema de administración de bases de datos PostgreSQL . SQL también puede estar incrustado en lenguajes como PHP, etc.

Sistemas que admiten SQL incorporado

Altibase

C / C ++
APRE es un precompilador de SQL incorporado proporcionado por Altibase Corp. para su servidor DBMS.

IBM DB2

IBM DB2 versión 9 para Linux, UNIX y Windows admite SQL incorporado para C, C ++, Java, COBOL, FORTRAN y REXX, aunque el soporte para FORTRAN y REXX ha quedado obsoleto.

IBM Informix

IBM Informix versión 14.10 para Linux, Unix y Windows admite SQL incorporado para C.}

Microsoft SQL Server

C / C ++
SQL incorporado para C ha quedado obsoleto a partir de Microsoft SQL Server 2008, aunque las versiones anteriores del producto lo admiten.

Mimer SQL

Mimer SQL para Linux, macOS , OpenVMS y Windows admite SQL incorporado.

C / C ++
SQL incorporado para C / C ++ es compatible con Linux, macOS, OpenVMS y Windows.
COBOL
El SQL incorporado para COBOL es compatible con OpenVMS.
Fortran
El SQL integrado para Fortran es compatible con OpenVMS.

Base de datos Oracle

Ada
Pro * Ada fue oficialmente des-compatible con Oracle en la versión 7.3. A partir de Oracle8, Pro * Ada fue reemplazado por SQL * Module, pero parece que no se ha actualizado desde entonces. SQL * Module es un lenguaje de módulo que ofrece un método de programación diferente al SQL incorporado. El módulo SQL * admite el estándar de lenguaje Ada83 para Ada.
C / C ++
Pro * C se convirtió en Pro * C / C ++ con Oracle8. Pro * C / C ++ se admite actualmente a partir de Oracle Database 11 g .
COBOL
Pro * COBOL se admite actualmente a partir de Oracle Database 11 g .
Fortran
Pro * FORTRAN ya no se actualiza a partir de Oracle8, pero Oracle continuará emitiendo versiones de parches a medida que se informan y corrigen errores.
Pascal
Pro * Pascal no se lanzó con Oracle8.
PL / I
Pro * PL / I no se lanzó con Oracle8. El Pro * PL / I Suplemento de la Guía de Oracle Precompiladores , sin embargo, continuó haciendo apariciones en la documentación de Oracle Biblioteca hasta la versión 11 g . A partir de la versión 12c, Pro * PL / I se eliminó de la biblioteca de documentación de Oracle.

PostgreSQL

C / C ++
ECPG es parte de PostgreSQL desde la versión 6.3.
COBOL
Cobol-IT ahora está distribuyendo un precompilador COBOL para PostgreSQL
Micro Focus proporciona soporte a través de su preprocesador OpenESQL

Administrador de bases de datos Raima (RDM)

Raima Database Manager es compatible con SQL incorporado para C / C ++ y SQL PL.

SAP Sybase

SAP Sybase ASE 15.7 admite SQL incorporado para C y COBOL como parte del Software Developer Kit Sybase .

SAP Sybase SQL Anywhere admite SQL incorporado para C y C ++ como parte del sistema de administración de bases de datos SQL Anywhere SQL Anywhere .

SAP Sybase IQ admite SQL incorporado para C y C ++ como parte del sistema de gestión de bases de datos Sybase IQ Sybase IQ .

SQL incorporado a través de lenguajes específicos de dominio

Ver también

Referencias

  1. ^ "El concepto de lenguaje del módulo" . Módulo SQL * para la Guía del programador de Ada, versión 8.0, capítulo 1. Introducción al módulo SQL * . Oracle Corporation . Consultado el 14 de julio de 2008 . CS1 maint: parámetro desalentado ( enlace )
  2. ^ "Base de datos DB2 para Linux, UNIX y Windows" . Desarrollo de aplicaciones SQL integradas . IBM . Consultado el 10 de abril de 2009 . CS1 maint: parámetro desalentado ( enlace )
  3. ^ "Servidor dinámico Informix" . IBM® Informix ESQL / C . IBM . Consultado el 31 de marzo de 2020 . CS1 maint: parámetro desalentado ( enlace )
  4. ^ "Características obsoletas del motor de base de datos en SQL Server 2008" . Libros en pantalla de SQL Server 2008 (marzo de 2009) . Microsoft . Consultado el 10 de abril de 2009 . CS1 maint: parámetro desalentado ( enlace )
  5. ^ "SQL incorporado" . Mimer SQL Programmer's Manual versión 11.0, Embedded SQL . Mimer SQL .
  6. ^ "Soporte de Ada en la versión 8" . Migración de la base de datos Oracle9i, versión 2 (9.2), capítulo 5. Compatibilidad e interoperabilidad . Oracle Corporation . Consultado el 14 de julio de 2008 . CS1 maint: parámetro desalentado ( enlace )
  7. ^ a b c "Alternativas de idioma" . Pro * COBOL Precompiler Programmer's Guide, versión 8.0, capítulo 1. Introducción . Oracle Corporation . Consultado el 14 de julio de 2008 . CS1 maint: parámetro desalentado ( enlace )
  8. ^ "Informe técnico de Raima" (PDF) .
  9. ^ "EmbeddedSQL" . Productos SAP Sybase . SAP Sybase . Consultado el 5 de septiembre de 2012 . CS1 maint: parámetro desalentado ( enlace )
  10. ^ "SAP Sybase SQL Anywhere" . Productos SAP Sybase . SAP Sybase. Archivado desde el original el 1 de mayo de 2013 . Consultado el 2 de mayo de 2013 . CS1 maint: parámetro desalentado ( enlace )
  11. ^ "SAP Sybase IQ" . Productos SAP Sybase . SAP Sybase. Archivado desde el original el 4 de mayo de 2013 . Consultado el 2 de mayo de 2013 . CS1 maint: parámetro desalentado ( enlace )

enlaces externos