Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебник 154.docx
Скачиваний:
10
Добавлен:
30.04.2022
Размер:
245.69 Кб
Скачать

6.2. Язык qbe

Кроме SQL применяется QBE (Query By Example) – язык запросов по образцу. Оба языка являются непроцедурными, т.е. описывают свойства результата ("что надо сделать"), а не алгоритм решения задачи ("как это сделать").

Для манипулирования данными указанные языки имеют практически одинаковые возможности. Главное отличие между ними заключается в способе формирования запросов: язык QBE предполагает ручное или визуальное формирование запроса, в то время как использование SQL означает программирование запроса.

Язык QBE позволяет создавать запросы к БД путем заполнения предлагаемой СУБД запросной формы. Традиционные компьютерные языки являются текстовыми, в них решение задач формулируется в виде символьных строк. QBE является графическим языком, в котором запросы формулируются посредством графического представления таблиц базы данных. Такой способ задания запросов обеспечивает высокую наглядность и не требует знания программирования – достаточно описать образец ожидаемого результата. В каждой из современных реляционных СУБД имеется свой вариант языка QBE, незначительно отличающийся от первого описания QBE, предложенного М.М. Злуффом в 1975-1977 гг. Помещая символы в определенные места в столбцах таблицы – шаблона запроса, пользователь может определять условия отбора строк для запроса, группировки данных, формат вывода данных, операции обновления данных. На языке QBE можно создавать однотабличные и многотабличные (выбирающие или обрабатывающие данные из нескольких связанных таблиц) запросы. Запросная форма имеет вид таблицы-шаблона, имя и названия полей которой совпадают с именем и названиями полей соответствующей исходной таблицы. Чтобы узнать имена доступных таблиц БД, в языке QBE предусмотрен запрос на выборку имен таблиц. Названия полей исходной таблицы могут вводиться в шаблон вручную или автоматически.

QBE предлагает пользователю для создания запроса заполнение таблиц-шаблонов. В первом столбце таблицы-шаблона выводится имя таблицы, во всех остальных – имена столбцов. После команды в языке QBE ставится точка.

Таблица 2

Инструкции языка QBE

Название

Назначение

Р .

Вывод значений заданного столбца. При выполнении запроса с условием сравнения (простым или составным) применяют математические символы «>» и «<». Если шаблоне запроса команда вывода «P.» стоит в первом столбце шаблона, то выводятся все данные выбранной строки. Если два условия стоят на одной строке шаблона, то для выбора строки необходимо выполнение обоих условий (логическая операция И). Условия, записанные на двух разных строках шаблона запроса, соответствуют условиям, объединенным логическим оператором ИЛИ. Команда вывода «P.» расположена на обеих строках и в каждом из столбцов, которые должны выводится.

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

Таблица, не имеющая заголовков столбцов, называется целевой и используется для определения данных, выводимых запросом. Данная таблица содержит информацию о цели (результате запроса).

Продолжение табл. 2

При записи выражений на QBE могут использоваться встроенные функции: CNT (количество), SUM (сумма), AVG (среднее), MIN (минимум), MAX (максимум), UN (уникальный), ALL (все значения, в том числе и повторяющиеся).

В некоторых запросах можно сгруппировать строки, имеющее одинаковое значение в одном или нескольких столбцах. Одна такая группа формируется на каждое значение заданного столбца. Затем к группе можно применить статистические функции. «G.» обозначается столбец, по которому производится группировка.

I.

Вставка данных

D.

Удаление данных

U.

Модификация данных. Изменение данных можно выполнять с вычислениями.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]