एंबेडेड एसक्यूएल

एंबेडेड SQL एक प्रोग्रामिंग भाषा की कम्प्यूटिंग शक्ति और SQL की डेटाबेस परिवर्तन क्षमताओं को संयोजित करने की एक विधि है। एंबेडेड SQL स्टेटमेंट होस्ट भाषा के प्रोग्राम सोर्स कोड के साथ इनलाइन लिखे गए SQL स्टेटमेंट हैं। एंबेडेड SQL कथन (प्रोग्रामिंग)  होस्ट भाषा के प्रोग्राम सोर्स कोड के साथ इनलाइन लिखे गए SQL स्टेटमेंट हैं। एम्बेडेड SQL स्टेटमेंट को एम्बेडेड SQL प्रीप्रोसेसर द्वारा पदच्छेद किया जाता है और कोड पुस्तकालय (कंप्यूटिंग) में होस्ट-भाषा कॉल साइट द्वारा प्रतिस्थापित किया जाता है। प्रीप्रोसेसर से आउटपुट को होस्ट कंपाइलर द्वारा संकलक संकलित किया जाता है। यह प्रोग्रामर को C/C++, कोबोल और फोरट्रान जैसी किसी भी संख्या में लिखे गए प्रोग्राम में एसक्यूएल स्टेटमेंट एम्बेड करने की अनुमति देता है। यह SQL-व्युत्पन्न प्रोग्रामिंग भाषाओं से भिन्न है जो PL/SQL और ट्रांजैक्ट-एसक्यूएल (टी-एसक्यूएल) जैसे अलग-अलग प्रीप्रोसेसरों से नहीं निकलती हैं।

SQL मानक समिति ने एम्बेडेड SQL मानक को दो चरणों में परिभाषित किया: मॉड्यूल भाषा नामक एक औपचारिकता को परिभाषित किया गया था, फिर एम्बेडेड एसक्यूएल मानक मॉड्यूल भाषा से प्राप्त गया था। SQL मानक SQL की एम्बेडिंग को एम्बेडेड SQL के रूप में परिभाषित करता है और जिस भाषा में SQL क्वेरी एम्बेडेड होती हैं उसे होस्ट भाषा कहा जाता है। उदाहरण के लिए, होस्ट भाषा C और एम्बेडेड SQL को ओरेकल और साइबेस डेटाबेस प्रबंधन सिस्टम में प्रो*C,, इन्फोर्मिक्स में ईएसक्यूएल/सी और पोस्टग्रेएसक्यूएल डेटाबेस प्रबंधन सिस्टम में ईसीपीजी कहा जाता है। एसक्यूएल को पीएचपी आदि भाषाओं में भी एम्बेड किया जा सकता है।

SQL मानक 2016 खरीद के माध्यम से उपलब्ध है और इसमें अध्याय 21 एंबेडेड SQL और इसके सिंटैक्स नियम शामिल हैं।

अल्टीबेस

 * सी/सी++
 * एपीआरइ अपने डीबीएमएस सर्वर के लिए अल्टिबेस (हाइब्रिड डेटाबेस) कॉर्प द्वारा प्रदान किया गया एक एम्बेडेड SQL प्रीकंपाइलर है।

आईबीएम डीबी2
लिनक्स, यूनिक्स और विंडोज़ के लिए आईबीएम डीबी 2 सी, सी++, जावा, कोबोल, फोरट्रान और REXX के लिए एम्बेडेड SQL का समर्थन करता है, हालाँकि फोरट्रान और REXX के लिए समर्थन हटा दिया गया है।

आईबीएम इनफॉर्मिक्स
लिनक्स, यूनिक्स और विंडोज़ के लिए इनफॉर्मिक्स आईबीएम संस्करण 14.10 C के लिए एम्बेडेड SQL का समर्थन करता है।

माइक्रोसॉफ्ट एसक्यूएल सर्वर

 * सी/सी++
 * सी के लिए एंबेडेड एसक्यूएल को माइक्रोसॉफ्ट एसक्यूएल सर्वर 2008 के रूप में हटा दिया गया है, हालांकि उत्पाद के पुराने संस्करण इसका समर्थन करते हैं।

माइमर एसक्यूएल
लिनक्स, मैक ओएस, ओपन वीएमएस और विंडोज़ के लिए माइमर एसक्यूएल एम्बेडेड एसक्यूएल का समर्थन करता है।
 * सी/सी++
 * C/C++ के लिए एंबेडेड एसक्यूएल लिनक्स, मैक ओएस, ओपन वीएमएस और विंडोज़ पर समर्थित है।


 * कोबोल
 * कोबोल के लिए एंबेडेड एसक्यूएल ओपनवीएमएस पर समर्थित है।


 * फोरट्रान
 * फोरट्रान के लिए एंबेडेड एसक्यूएल ओपनवीएमएस पर समर्थित है।

ओरेकल डेटाबेस

 * एडा (प्रोग्रामिंग भाषा)
 * प्रो*एडीए को संस्करण 7.3 में ओरेकल कॉर्पोरेशन द्वारा आधिकारिक तौर पर समर्थनहीन कर दिया गया था। ओरेकल8 से प्रारंभ करके, प्रो*एडीए को SQL*मॉड्यूल द्वारा प्रतिस्थापित किया गया था, लेकिन ऐसा प्रतीत होता है कि तब से इसे अद्यतन नहीं किया गया है। SQL*मॉड्यूल एक मॉड्यूल भाषा है जो एम्बेडेड SQL से भिन्न प्रोग्रामिंग विधि प्रदान करती है। SQL*मॉड्यूल एडीए के लिए एडीए83 भाषा मानक का समर्थन करता है।


 * सी/सी++
 * ओरेकल8 के साथ प्रो*सी प्रो*सी/सी++ बन गया। प्रो*सी/सी++ वर्तमान में ओरेकल डेटाबेस 11g के रूप में समर्थित है।


 * कोबोल
 * प्रो*कोबोल वर्तमान में ओरेकल डेटाबेस 11g के रूप में समर्थित है।


 * फोरट्रान
 * प्रो*फोरट्रान को अब ओरेकल8 के रूप में अपडेट नहीं किया गया है, लेकिन ओरेकल बग की रिपोर्ट और सुधार के रूप में पैच रिलीज़ जारी करना जारी रखेगा।


 * पास्कल (प्रोग्रामिंग भाषा)
 * प्रो*पास्कल को ओरेकल8 के साथ रिलीज़ नहीं किया गया था।


 * पीएल/आई
 * प्रो*पीएल/आई को ओरेकल8 के साथ रिलीज़ नहीं किया गया था। हालाँकि, ओरेकल प्रीकंपाइलर्स गाइड का प्रो*पीएल/आई अनुपूरक 11g रिलीज़ होने तक ओरेकल डॉक्यूमेंटेशन लाइब्रेरी में प्रदर्शित होता रहा। रिलीज़ 12सी के अनुसार, प्रो*पीएल/आई को ओरेकल डॉक्यूमेंटेशन लाइब्रेरी से हटा दिया गया है।

पोस्टग्रेएसक्यूएल

 * सी/सी++
 * ईसीपीजी संस्करण 6.3 से पोस्टग्रेएसक्यूएल का हिस्सा है।


 * कोबोल
 * कोबोल-आईटी अब पोस्टग्रेएसक्यूएल के लिए कोबोल प्रीकंपाइलर वितरित कर रहा है
 * माइक्रो फोकस अपने ओपनईएसक्यूएल प्रीप्रोसेसर के माध्यम से समर्थन प्रदान करता है

एसएपी साइबेस
SAP Sybase ASE 15.7 सॉफ़्टवेयर डेवलपर किट Sybase के भाग के रूप में C और COBOL के लिए एम्बेडेड SQL का समर्थन करता है। SAP Sybase SQL Anywhere, SQL Anywhere डेटाबेस प्रबंधन प्रणाली SQL Anywhere के भाग के रूप में C और C++ के लिए एम्बेडेड SQL का समर्थन करता है। SAP Sybase IQ, Sybase IQ डेटाबेस प्रबंधन प्रणाली Sybase IQ के भाग के रूप में C और C++ के लिए एम्बेडेड SQL का समर्थन करता है।

डोमेन-विशिष्ट भाषाओं के माध्यम से एंबेडेड एसक्यूएल

 * भाषा एकीकृत क्वेरी|LINQ-to-SQL SQL जैसी भाषा को CLI भाषाओं|.NET भाषाओं की सूची में एम्बेड करता है।
 * जावा पर्सिस्टेंस एपीआई मानदंड एपीआई के माध्यम से जावा (प्रोग्रामिंग भाषा) में एक एसक्यूएल जैसी भाषा को एम्बेड करता है।
 * जावा ऑब्जेक्ट ओरिएंटेड क्वेरीइंग एक SQL जैसी भाषा को जावा (प्रोग्रामिंग भाषा) में एम्बेड करता है।

यह भी देखें

 * भाषा बंधन
 * पीएल/एसक्यूएल
 * प्रो*सी/सी++
 * एसक्यूएल/ओएलबी
 * एसक्यूएल पीएल
 * ट्रांजैक्ट-एसक्यूएल

बाहरी संबंध

 * Introduction to Pro*C Embedded SQL
 * Embedded SQL with Pro*C
 * SQL*Module for Ada Programmer's Guide, Release 8.0
 * ECPG, PostgreSQL Documentation
 * ESQL/C, Informix Documentation'
 * Embedded SQL in C, Mimer SQL Developer