Sulautettu SQL - Embedded SQL
Embedded SQL on menetelmä yhdistää computing valtaa ohjelmointikieli ja tietokanta manipulointi ominaisuuksia SQL . Sulautetut SQL- lauseet ovat SQL-käskyjä, jotka on kirjoitettu riviin ohjelman lähdekoodin kanssa , isäntäkielellä. Sulautetun SQL on jäsentää Sen sisäänrakennettu SQL esikäsittelijään ja korvattiin isäntä-kielen puheluita kuin koodi kirjastoon . Sitten isäntäkääntäjä koontaa esiprosessorin ulostulon . Tämä antaa ohjelmoijille mahdollisuuden upottaa SQL-lauseet ohjelmiin, jotka on kirjoitettu kaikilla kielillä, kuten C / C ++ , COBOL ja Fortran . Tämä eroaa SQL-johdetuista ohjelmointikielistä, jotka eivät käy erillisten esiprosessoreiden, kuten PL / SQL ja T-SQL, läpi .
SQL-standardikomitea määritteli sulautetun SQL-standardin kahdessa vaiheessa: määritettiin moduulikieleksi kutsuttu formalismi , jonka jälkeen upotettu SQL-standardi johdettiin moduulikielestä. SQL-standardi määrittelee SQL: n upottamisen sulautetuksi SQL: ksi ja kieltä, johon SQL-kyselyt upotetaan, kutsutaan isäntäkieleksi . Suosittu isäntäkieli on C. Isäntäkieli C ja upotettua SQL: ää kutsutaan esimerkiksi Pro * C : ksi Oracle- ja Sybase- tietokantahallintajärjestelmissä, ESQL / C: ksi Informixissa ja ECPG : ksi PostgreSQL- tietokannan hallintajärjestelmässä. SQL voidaan myös upottaa kielille, kuten PHP jne.
Järjestelmät, jotka tukevat sulautettua SQL: ää
Altibase
- C / C ++
- APRE on upotettu SQL-esikääntäjä, jonka Altibase Corp. tarjoaa DBMS-palvelimelleen.
IBM DB2
IBM DB2 -versio 9 Linuxille, UNIX: lle ja Windowsille tukee upotettua SQL-versiota C-, C ++ -, Java-, COBOL-, FORTRAN- ja REXX-tiedostoille, vaikka tuki FORTRANille ja REXX: lle on poistettu käytöstä.
IBM Informix
IBM Informix -versio 14.10 Linuxille, Unixille ja Windowsille tukee upotettua SQL-versiota C: lle.}
Microsoft SQL Server
- C / C ++
- C: n sulautettu SQL on poistettu käytöstä Microsoft SQL Server 2008: sta, vaikka tuotteen aiemmat versiot tukevat sitä.
Mimer SQL
Mimer SQL for Linux, macOS , OpenVMS ja Windows tukevat sulautettua SQL: ää.
- C / C ++
- Upotettua SQL for C / C ++ -ohjelmistoa tuetaan Linuxissa, macOS: ssa, OpenVMS: ssä ja Windowsissa.
- COBOL
- Sulautettua SQL for COBOL -tukea tukee OpenVMS.
- Fortran
- Sulautettua SQL for Fortran -tukea tukee OpenVMS.
Oracle-tietokanta
- Ada
- Oracle tuki virallisesti Pro * Adaa versiossa 7.3. Oracle8: sta alkaen Pro * Ada korvattiin SQL * -moduulilla, mutta sitä ei ilmeisesti ole päivitetty. SQL * Module on moduulikieli, joka tarjoaa eri ohjelmointimenetelmän kuin upotettu SQL. SQL * -moduuli tukee Adan Ada83-kielistandardia.
- C / C ++
- Pro * C: stä tuli Pro * C / C ++ Oracle8: n kanssa. Pro * C / C ++ -ohjelmistoa tuetaan tällä hetkellä Oracle Database 11 g -versiosta alkaen .
- COBOL
- Pro * COBOLia tuetaan tällä hetkellä Oracle Database 11 g -versiosta alkaen .
- Fortran
- Pro * FORTRANia ei enää päivitetä Oracle8: sta alkaen, mutta Oracle jatkaa korjaustiedostojen antamista, kun virheistä ilmoitetaan ja korjataan.
- Pascal
- Pro * Pascalia ei julkaistu Oracle8: n kanssa.
- PL / I
- Pro * PL / I: tä ei julkaistu Oracle8: n kanssa. Pro * PL / I täydennysosa Oracle esikääntäjät Guide kuitenkin jatkanut esiintymisiä Oracle Documentation Library kunnes julkaisu 11 g . Julkaisusta 12c lähtien Pro * PL / I on poistettu Oracle Documentation Library -kirjastosta.
PostgreSQL
- C / C ++
- ECPG on osa PostgreSQL- versiota versiosta 6.3 lähtien.
- COBOL
- Cobol-IT jakaa nyt COBOL-esikääntäjän PostgreSQL: lle
- Micro Focus tarjoaa tukea OpenESQL-esiprosessorinsa kautta
Raima Database Manager (RDM)
Raima Database Manager tukee C / C ++: n ja SQL PL: n upotettua SQL: ää.
SAP Sybase
SAP Sybase ASE 15.7 tukee sulautettua SQL: ää C: lle ja COBOL: lle osana Software Developer Kit Sybasea .
SAP Sybase SQL Anywhere tukee C: lle ja C ++: lle upotettua SQL: ää osana SQL Anywhere -tietokannan hallintajärjestelmää SQL Anywhere .
SAP Sybase IQ tukee sulautettua SQL: ää C: lle ja C ++: lle osana Sybase IQ -tietokannan hallintajärjestelmää Sybase IQ .
Upotettu SQL verkkotunnuskohtaisten kielten kautta
- LINQ-to-SQL upottaa SQL-tyyppisen kielen .NET-kieliin .
- JPA upottaa SQL: n kaltaisen kielen Criteria API: n kautta Java: iin .
- jOOQ upottaa SQL-tyyppisen kielen Javaan .
Katso myös
Viitteet
- ^ "Moduulin kielikonsepti" . Ada-ohjelmoijan oppaan SQL * -moduuli, julkaisu 8.0, luku 1. Johdanto SQL * -moduuliin . Oracle Corporation . Haettu 14.7.2008 . CS1 maint: ei suositeltu parametri ( linkki )
- ^ "DB2-tietokanta Linuxille, UNIX: lle ja Windowsille" . Sulautettujen SQL-sovellusten kehittäminen . IBM . Haettu 10.4.2009 . CS1 maint: ei suositeltu parametri ( linkki )
- ^ "Informix Dynamic Server" . IBM Informix ESQL / C . IBM . Haettu 2020-03-31 . CS1 maint: ei suositeltu parametri ( linkki )
- ^ "Vanhentuneet tietokannan moottorin ominaisuudet SQL Server 2008: ssa" . SQL Server 2008 Books Online (maaliskuu 2009) . Microsoft . Haettu 10.4.2009 . CS1 maint: ei suositeltu parametri ( linkki )
- ^ "Upotettu SQL" . Mimer SQL Programmer's Manual -versio 11.0, sulautettu SQL . Mimer SQL .
- ^ "Adan tuki versiossa 8" . Oracle9i Database Migration, Release 2 (9.2), luku 5. Yhteensopivuus ja yhteentoimivuus . Oracle Corporation . Haettu 14.7.2008 . CS1 maint: ei suositeltu parametri ( linkki )
- ^ a b c "Kielivaihtoehdot" . Pro * COBOL-esikääntäjän ohjelmoijan opas, julkaisu 8.0, luku 1. Johdanto . Oracle Corporation . Haettu 14.7.2008 . CS1 maint: ei suositeltu parametri ( linkki )
- ^ "Raima Technical Whitepaper" (PDF) .
- ^ "EmbeddedSQL" . SAP Sybase -tuotteet . SAP Sybase . Haettu 2012-09-05 . CS1 maint: ei suositeltu parametri ( linkki )
- ^ "SAP Sybase SQL Anywhere" . SAP Sybase -tuotteet . SAP Sybase. Arkistoitu alkuperäisestä 01.05.2013 . Haettu 2. toukokuuta 2013 . CS1 maint: ei suositeltu parametri ( linkki )
- ^ "SAP Sybase IQ" . SAP Sybase -tuotteet . SAP Sybase. Arkistoitu alkuperäisestä 2013-05-04 . Haettu 2. toukokuuta 2013 . CS1 maint: ei suositeltu parametri ( linkki )