КАТЕГОРИИ: Архитектура-(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 Organization), также называют стандартом 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; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |