201
базой данных, вместо термина «отношение» здесь используется термин «таблица», вместо
терминов «кортеж» и «атрибут» используются соответственно термины «строка» и «стол-
бец».
Разновидности SQL
Как отмечалось выше, в отличие от «обычных» языков программирования в SQL от-
сутствует возможность объявления переменных, нет инструкции IF, нет цикла FOR и т.д.
Собственно программирование (разработка прикладных программ) на подобном языке прак-
тически невозможно. Поэтому к настоящему моменту используются следующие технологии
(режимы) работы с базой данных на языке SQL (в некоторых источниках
эти технологии на-
зывают разновидностями языка SQL):
• формирование непосредственно пользователем запроса на языке SQL в интерактив-
ном режиме (
интерактивный SQL);
• формирование запроса на языке SQL в прикладной программме (программный или
встроенный SQL:
- статическое формирование запроса (статический SQL);
- динамическое формирование запроса (динамический SQL);
- формирование запроса с помощью библиотек (API – интерфейсы вызова под-
программ).
В интерактивном режиме работы с базой данных: пользователь работает с базой дан-
ных в прямом диалоге: вводит запрос на языке SQL – получает результат, вводит другой
запрос – получает другой результат и т.д.
Встроенный SQL представляется операторами языка SQL, встроенные в прикладные
программы, написанные на других языках программирования (в других программных сре-
дах). Это дает возможность работы с базой данных с помощью прикладных программ, на-
писанных на других алгоритмических языках, но требует включения дополнительных
средств, обеспечивающих интерфейс между операторами языка SQL и соответствующим
языком программирования.
При статическом использовании
языка (статический SQL) в текст прикладной про-
граммы включаются конкретные операторы SQL, и после компиляции исходной программы
в выполняемый модуль жестко включаются соответствующие эти операторам функции SQL.
Изменения в вызываемых функциях могут здесь определяться только изменениями пара-
метров операторов SQL, инициируемых с помощью переменных языка программирования.
При динамическом использовании языка (
динамический SQL) формирование SQL-
запросов, соответствующие вызовы SQL-функций для обращения к базе данных осуществ-
ляется динамически в ходе выполнения программы.
Еще одним способом динамического формирования SQL-запросов в прикладной про-
грамме является обращение к соответствующим SQL-функциям с помощью специальных
интерфейсов программирования приложений (библиотек функций, разработанных для
связи прикладной программы и СУБД посредством SQL-запросов).