Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Основные сведения о языке SQL




Язык SQL ориентирован на выполнение действий с таблицами БД и данными в этих таблицах, а также некоторых вспомогательных действий. В отличие от про­цедурных языков программирования, в нем нет операторов управления вычис­лительным процессом (циклов, переходов, ветвления) и средств ввода-вывода. Составленную на языке SQL программу также называют SQL-запросом.

Язык SQL обычно интегрируется в другие средства (оболочку), используясь в интерактивном режиме. Так, в системе управления базами данных, имеющей интерактивный интерфейс, пользователь может работать, ничего не зная об языке SQL и независимо от того, какая БД используется: локальная или уда­ленная. Такие СУБД, как Microsoft Access, Visual FoxPro или Paradox, сами вы­полняют действия, связанные с программированием запросов на SQL, предлагая пользователю средства визуального построения запросов, например, Query By Example (QBE) — запрос по образцу.

Так как SQL не обладает возможностями полноценного языка программирова­ния, а ориентирован на доступ к данным, то его часто включают в средства раз­работки программ. Встроен он и в систему Delphi. При этом для работы с командами SQL предлагаются соответствующие средства и компоненты. В Delphi к числу таких компонентов принадлежит набор данных Query.

Различают два вида SQL-запросов: статический и динамический. Статический SQL-запрос включается в исходный код на этапе разработки и в процессе вы­полнения приложения не изменяется. Разработчик может изменить SQL-запрос путем использования параметров, если таковые имеются в его тексте.

Код динамического SQL-запроса формируется или изменяется при выполнении приложения. Такие запросы обычно применяются в случае, когда при выполне­нии запроса требуется учитывать действия пользователя.

Замечание

Принятая нами классификация не является однозначной. Так, в некоторых ис­точниках SQL-запросы с параметрами тоже относят к разряду динамических.

Язык SQL имеет несколько стандартов, из которых наиболее распространенны­ми среди производителей программных продуктов являются стандарты SQL-89 и SQL-92. Стандарт SQL-92, поддерживаемый Американским национальным институтом стандартов (ANSI — American National Standards Institute) и Между­народной организацией по стандартизации (ISO — International Standard Organi­zation), также называют стандартом ANSI или ANSI/ISO. Наличие нескольких стандартов и различная их интерпретация породили множество диалектов языка SQL, которые в большей или меньшей степени отличаются друг от друга.


В языке SQL можно выделить следующие основные подмножества операторов:

  • определения данных;

§ обработки данных;

§ управления привилегиями (доступом к данным);

§ управления транзакциями.

Рассмотрим основные возможности, реализованные в используемой в Delphi версии языка SQL. Эта версия несколько отличается от стандарта SQL-92, на­пример, в ней нельзя работать с просмотрами и управлять привилегиями.

Особенности языка SQL, используемого для работы с удаленными БД (про­мышленными СУБД), будут рассмотрены в следующих главах.

В приложениях Delphi для выполнения операторов SQL можно использовать набор данных Query. Напомним, что текст SQL-запроса является значением свойства SQL компонента Query и формируется или при разработке приложения, или во время его выполнения. Компонент Query обеспечивает выполнение SQL-запроса и получение соответствующего набора данных. Формирование набора данных выполняется при активизации компонента Query путем вызова метода Open или установкой свойству Active значения True. Иногда при отработке SQL-запроса нет необходимости получать набор данных, например, при удале­нии, вставке или модификации записей. В этом случае пред-почтительнее вы­полнять запрос вызовом метода ExecSQL. При работе в сети вызов этого метода производит требуемую модификацию набора данных, не передавая в вызываю­щее приложение (компьютер) записи набора данных, что существенно снижает нагрузку на сеть.

Кроме того, набрать и выполнить в интерактивном режиме текст SQL-запроса позволяют инструментальные программы, поставляемые вместе с Delphi, на­пример такие, как Database Desktop, SQL Explorer и SQL Builder. Отметим, что первые две программы вызываются с помощью одноименных команд меню Tools и Database, соответственно, а визуальный построитель запросов SQL Builder вызывается через контекстное меню компонента Query.

Проверка синтаксиса и отработка запроса, встроенного в приложение (чаще всего с помощью компонента Query), производятся на этапе выполнения при­ложения. При наличии синтаксических ошибок в тексте SQL-запроса генериру­ется исключительная ситуация, интерпретировать которую порой непросто. Для отладки SQL-запросов удобно использовать программы с развитым интерфей­сом, например, Datab;se Desktop. После отладки текст запроса вставляется в разрабатываемое приложение. При таком подходе значительно сокращается время создания запросов и существенно уменьшается вероятность появления динамических ошибок.

В качестве результата выполнения SQL-запроса может возвращаться набор дан­ных, который составляют отобранные с его помощью записи. Этот набор дан­ных называют результирующим.

В дальнейшем при описании операторов языка мы будем опускать несущест­венные операнды и элементы, используя для обозначения отдельных элементов символы < > (при программировании не указываются), а необязательные конст­рукции заключать в квадратные скобки. Для наглядности зарезервированные слова языка SQL будут писаться строчными, а имена — прописными буквами. Регистр букв не влияет на интерпретацию операторов языка. Точка с запятой в конце SQL-операторов необязательна. Элементы в списках, например, имена полей и таблиц, должны быть разделены запятыми.

Имена таблиц и полей (столбцов) заключаются в одиночные или двойные апо­строфы, например, "First Name". Если имя не содержит пробелов и других спе­циальных символов, то апострофы можно не указывать.

В SQL-запросе допускаются комментарии, поясняющие текст программмы. Комментарий ограничивается символами /* и */.





Поделиться с друзьями:


Дата добавления: 2014-01-07; Просмотров: 1626; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.007 сек.