Vestavěný SQL - Embedded SQL
Vestavěný SQL je metoda kombinace výpočetní síla a programovací jazyk a databáze manipulace schopnosti SQL. Vestavěný SQL prohlášení jsou příkazy SQL psané přímo s programem zdrojový kód hostitelského jazyka. Vložené příkazy SQL jsou analyzován vloženým SQL preprocesor a nahrazeno hostitelským jazykem hovory na kód knihovna. Výstup z preprocesoru je pak zkompilován hostitelem překladač. To umožňuje programátorům vložit příkazy SQL do programů napsaných v libovolném počtu jazyků, jako je C / C ++, COBOL a Fortran. To se liší od programovacích jazyků odvozených od SQL, které neprocházejí diskrétními preprocesory, jako například PL / SQL a T-SQL.
Výbor pro standardy SQL definoval vestavěný standard SQL ve dvou krocích: volal formalismus Jazyk modulu byl definován, pak byl vestavěný standard SQL odvozen z modulu Language.[1] Standard SQL definuje vložení SQL jako vložený SQL a jazyk, ve kterém jsou vloženy dotazy SQL, se označuje jako hostitelský jazyk. Populárním hostitelským jazykem je C. Hostitelský jazyk C a například vložený SQL se nazývá Pro * C v Věštec a Sybase systémy pro správu databází, ESQL / C ve Windows Informix, a ECPG v PostgreSQL systém správy databáze. SQL může být také vložen do jazyků, jako je PHP atd.
Systémy, které podporují vestavěný SQL
Altibase
- C / C ++
- APRE je vložený prekompilátor SQL poskytovaný Altibase Corp. pro svůj server DBMS.
IBM DB2
IBM DB2 verze 9 pro Linux, UNIX a Windows podporuje vložený SQL pro C, C ++, Javu, COBOL, FORTRAN a REXX, ačkoli podpora pro FORTRAN a REXX byla zastaralá.[2]
IBM Informix
IBM Informix verze 14.10 pro Linux, Unix a Windows podporuje vložený SQL pro C. [3]}
Microsoft SQL Server
- C / C ++
- Embedded SQL pro C byl zastaralý od Microsoft SQL Server 2008, i když to dřívější verze produktu podporují.[4]
Mimer SQL
Mimer SQL pro Linux, Operační Systém Mac, OpenVMS a Windows podporují vložený SQL.[5]
- C / C ++
- Embedded SQL pro C / C ++ je podporován v systémech Linux, macOS, OpenVMS a Windows.
- COBOL
- Integrovaný SQL pro COBOL je podporován na OpenVMS.
- Fortran
- Integrovaný SQL pro Fortran je podporován na OpenVMS.
Oracle Database
- Ada
- Pro * Ada byl oficiálně bez podpory Věštec ve verzi 7.3. Počínaje Oracle8 byl Pro * Ada nahrazen modulem SQL *, ale zdá se, že od té doby nebyl aktualizován.[6] SQL * Module je jazyk modulu, který nabízí jinou metodu programování než vestavěný SQL. Modul SQL * podporuje jazykový standard Ada83 pro Ada.
- C / C ++
- Pro * C se stal Oracle * C / C ++ s Oracle8. Pro * C / C ++ je aktuálně podporován od Oracle Database 11G.
- COBOL
- Pro * COBOL je aktuálně podporován od Oracle Database 11G.
- Fortran
- Pro * FORTRAN již není od verze Oracle8 aktualizován, ale Oracle bude i nadále vydávat vydání oprav, protože budou hlášeny a opravovány chyby.[7]
- PL / I.
- Pro * PL / I nebyl vydán s Oracle8. The Pro * PL / I Dodatek k příručce Oracle Precompilers Guideaž do vydání 11 se však nadále objevovaly v knihovně dokumentace OracleG. Od vydání 12c byl Pro * PL / I odstraněn z knihovny dokumentace Oracle.[7]
PostgreSQL
- C / C ++
- ECPG je část PostgreSQL od verze 6.3.
- COBOL
- Cobol-IT nyní distribuuje předkompilátor COBOL pro PostgreSQL[Citace je zapotřebí ]
- Micro Focus poskytuje podporu prostřednictvím svého preprocesoru OpenESQL[Citace je zapotřebí ]
Raima Database Manager (RDM)
Správce databáze Raima podporuje vložený SQL pro C / C ++ a SQL PL.[8][je potřeba zdroj třetí strany ]
SAP Sybase
SAP Sybase ASE 15.7 podporuje vložený SQL pro C a COBOL jako součást Software Developer Kit Sybase.[9]
SAP Sybase SQL Anywhere podporuje vložený SQL pro C a C ++ jako součást systému správy databáze SQL Anywhere SQL kdekoli.[10]
SAP Sybase IQ podporuje integrovaný SQL pro C a C ++ jako součást systému pro správu databáze Sybase IQ Sybase IQ.[11]
Integrovaný SQL prostřednictvím jazyků specifických pro doménu
- LINQ-to-SQL vloží jazyk podobný SQL Jazyky .NET.
- JPA vloží jazyk podobný SQL Criteria API do Jáva.
- JOOQ vloží jazyk podobný SQL Jáva.
Viz také
Reference
- ^ „Koncept jazykového modulu“. SQL * Module for Ada Programmer's Guide, Release 8.0, Chapter 1. Introduction to SQL * Module. Oracle Corporation. Citováno 2008-07-14.
- ^ „Databáze DB2 pro Linux, UNIX a Windows“. Vývoj vestavěných aplikací SQL. IBM. Citováno 2009-04-10.
- ^ „Dynamický server Informix“. IBM® Informix® ESQL / C. IBM. Citováno 2020-03-31.
- ^ „Zastaralé funkce databázového stroje na serveru SQL Server 2008“. SQL Server 2008 Books Online (březen 2009). Microsoft. Citováno 2009-04-10.
- ^ „Embedded SQL“. Příručka programátora Mimer SQL verze 11.0, vestavěný SQL. Mimer SQL.
- ^ „Podpora Ada ve verzi 8“. Migrace databáze Oracle9i, vydání 2 (9.2), kapitola 5. Kompatibilita a interoperabilita. Oracle Corporation. Citováno 2008-07-14.
- ^ A b C „Jazykové alternativy“. Průvodce programátora Pre * COBOL Precompiler, vydání 8.0, kapitola 1. Úvod. Oracle Corporation. Citováno 2008-07-14.
- ^ „Technický dokument Raima“ (PDF).
- ^ „EmbeddedSQL“. Produkty SAP Sybase. SAP Sybase. Citováno 2012-09-05.
- ^ „SAP Sybase SQL Anywhere“. Produkty SAP Sybase. SAP Sybase. Archivovány od originál dne 01.05.2013. Citováno 2013-05-02.
- ^ „SAP Sybase IQ“. Produkty SAP Sybase. SAP Sybase. Archivovány od originál dne 04.05.2013. Citováno 2013-05-02.