Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
32
Добавлен:
16.04.2013
Размер:
1.04 Mб
Скачать
  1. Введение в язык sql92.

Детей надо учить тому, что пригодится им, когда они вырастут.”

АРИСТИПП, 2-я пол.V - 1-я пол. IV вв. до н.э.

SQL(Structure Query Language) является примером языка с трансформирующейся ориентацией. Он предназначен для работы с таблицами с целью преобразования входных данных к требуемому выходному виду. Язык включает в себя только команды определения и манипулирования данными. В нем отсутствуют команды управления вычислительным процессом типа“if...else...”,“while...”, характерных для процедурных языков. Поэтому предусматриваются две технологии использования SQL:

  • в интерактивном режиме последовательно выполняются операторы языка;

  • операторы встраиваются в текст программ на процедурном языке типа С\С++.

Язык SQLявляется первым и пока единственныи стандартным языком работы с базами данных, который получил широкое распостранение. Практически все крупные разработки СУБД имеютSQL-интерфейсы. Он стал частью архитектуры приложений (например,System Application Architectue корпорацииIBM), федеральным стандартом обработки информации в США и стратегическим выбором крупных организаций (типа консорциумаX/OPEN создающий стандарты для средыUNIX).

Язык служит основой для появления на рынках программных продуктов типа OnLine Transaction Processing (OLTP) и OnLine Analitycal Processing (OLAP). Активно ведется работа в области расширения стандарта для поддержки динамических представлений, распределённой обработки данных, эффективной поддержки объектно-ориентированного программирования и мультимедиа.

Стандарт ISO SQL не использует терминов «отношение», «атрибут» и «кортеж», вместо них применяются термины «таблица», «столбец» и «строка». Это следствие стратегии «нежесткости использования», предполагающей пониманиеSQLнаивными пользователями.

    1. О нотации грамматики языка sql.

Лучше быть нищим, чем невеждой ... ”

АРИСТИПП, 2-я пол.V - 1-я пол. IV вв. до н.э.

Для описания грамматикиоператоров языка SQL мы будем использовать следующую расширенную форму BNF – нотации(Backus-Naur Form).

  • Прописные буквы используются для зарезервированых слов и не изменются;

  • Строчные буквы используются для записи слов, определяемых пользователем.

  • Вертикальная черта ( | )означает выбор одного из нескольких вариантов, т.е. a | b | c.

  • Фигурная скобка означает объязательный элемент, т.е. { a }.

  • Квадратные скобки обозначают необъязательный элемент, [ b ].

  • Многоточие ( ... )используется для повторения (ноль и более раз), { a | b } [ , c ... ] .

Структура операторов языка определяется ключевым словом, представляющие собой слова английского языка. Большенство компонентов операторов нечувствительны к регистру (прописные или строчные буквы неразличимы), но важным исключением являются литералы-данные, которые надо вводить с учетом регистра, например при поиске по эталону слова. Формат языка свободный (т.е. не привязан к конкретным позициям в строке). Рекомендуется придерживаться следующих правил для повышения читабельности.

  • Каждая фраза в операторе начинается с новой строки.

  • Начало каждой фразы выравнивается с началом остальных фраз оператора.

  • Фразы, вложенные в данный оператор, начинаются с некоторым отступом, что указывает на их подчиненый характер.

В некоторых СУБД используются диалекты языка SQL, которые могут допускать небольшие различия со стандартом. Например, оператор может заканчиваться символом ( ; ), что отсутствует в стандартеISO SQL92.

Соседние файлы в папке УП_ОПТ2