Введение

Как разъяснялось в главе 1, SQL используется в системе DB2 и как интерактивный язык запросов, и как язык программирования в среде базы данных. Однако до настоящего времени мы более или менее игнорировали аспекты SQL, связанные с программированием, и там, где это имело какое-либо значение, молчаливо предполагалось, что язык используется в интерактивном режиме. Теперь мы особо обратим внимание на эти аспекты языка, связанные с программированием. В настоящей главе обсуждаются идеи, лежащие в основе «встроенного SQL», как его обычно называют. В следующей главе рассматривается концепция обработки транзакций. Наконец, в главе 12 предлагается (только) введение в несколько более сложный вопрос, а именно «динамический SQL». Но сначала о первом.

Основной принцип, лежащий в основе встроенного SQL, который можно было бы назвать двухрежимнымпринципом, заключается в том, что любое предложение SQL, которое может использоваться на терминале, может использоваться также, в прикладной программе. Как уже указывалось в главе 1, имеется, конечно, ряд различий между данным интерактивным предложением SQLи соответствующей его встроенной формой. В частности, в среде программирования предложения SELECT требуют в значительной степени расширенной интерпретации (см. раздел 10.4). Но указанный принцип тем не менее вполне справедлив в отличие, между прочим, от обратного ему утверждения. Иначе говоря, существуют, как мы увидим позднее, многие предложения SQL, которые могут использоваться только в программе, но не в интерактивном режиме.

Можно, очевидно, отметить, что двухрежимный принцип относится к полному языку SQL, а не только к операциям манипулирования данными. Хотя на самом деле в контексте программирования наиболее часто используются, несомненно, операции манипулирования данными, не будет ошибкой использование в программе, например, встроенных предложений CREATE TABLE, если это имеет смысл для рассматриваемой прикладной задачи.

Языками программирования, в которые можно встраивать SQL в системе DB2,— так называемыми «включающими» языками — являются ПЛ/1, Кобол, Фортран и ассемблер IBM/370. В разделе 10.2 рассматривается механика встраивания SQL в эти языки. Далее, в разделах 10.3 и 10.4 представлены, в частности, основные идеи, на которых базируется встраивание предложений манипулирования данными языка SQL. Наконец, в разделе 10.5 приводится исчерпывающий пример, связанный с программированием.

Примечание. Для определенности все приведенные далее примеры программ записываются на языке ПЛ/1. Большинство иллюстрируемых в них идей переносится в другие языки лишь с небольшими изменениями. Различия, возникающие при переходе от одного языка к другому, излагаются подробно в случае, если они являются важными.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: