Главная страница

Эч. Язык запросов по образцу qbe


Скачать 70.5 Kb.
НазваниеЯзык запросов по образцу qbe
Дата21.11.2022
Размер70.5 Kb.
Формат файлаdoc
Имя файлаtemplate (7).doc
ТипДокументы
#803791

Основные данные о работе


Версия шаблона

3.1

Вид работы

Эссе

Название дисциплины

Базы данных (СПО, курс 1)


Тема

Язык запросов по образцу QBE

Фамилия

Смирнов

Имя

Александр

Отчество

Андреевич

№ контракта

0910020090261199


Основная часть

Глава основной части


Язык QBE был разработан фирмой IBM в 1970-х годах и предназначался для пользователей, заинтересованных в выборе информации из баз данных. Данный язык приобрел у пользователей столь широкое признание, что в настоящее время в той или иной мере он реализован практически во всех известных СУБД, включая и Microsoft Access. Средства поддержки языка QBE в СУБД Microsoft Access очень просты в эксплуатации и в то же время представляют пользователям достаточно широкий спектр возможностей работы с данными. Средства языка QBE могут применяться для ввода запросов к информации, сохраняемой в одной или нескольких таблицах, а также для определения набора полей, которые должны находиться в результирующей таблице. Отбор записей может, проводится по конкретному или общему критерию, и предусматривать исполнение необходимых вычислений на основе информации, сохраняемой в таблицах. Кроме того, средства языка QBE возможно использовать для выполнения разных операций над таблицами, например, для вставки и удаления записей, модификации значений полей или создания новых полей и таблиц.
В языке QBE (Query-by-Example - язык запросов по образцу) используется визуальный подход для организации доступа к информации в базе данных, основанный на применении шаблонов запросов. Использование QBE осуществляется путем задания образцов значений в шаблоне запроса, предусматривающем такой тип доступа к базе данных, который необходим на текущий момент, к примеру, получение ответа на некий вопрос. Структурированный язык запросов SQL - это гибкий язык, являющийся самым известным инструментом, который используется для связи с реляционной базой данных. Данный язык нужен для выполнения операций над таблицами (создание, удаление, изменение структуры) и над данными таблиц (выборка, изменение, добавление и удаление), а также некоторых сопутствующих операций. SQL является непроцедурным языком и состоит из ограниченного количества команд, специально предназначенных для управления над данными. По возможностям манипулирования данными при описании запросов указанные языки практически эквивалентны. Главное отличие между ними, заключается в способе формирования запросов: язык QBE предполагает ручное или визуальное формирование запроса, в то время как использование SQL означает программирование запроса.
Реляционная модель представляет данные в базе данных как набор отношений. Отношение — это математический термин, представляющий простую двумерную табличную структуру, состоящую из n строк и m столбцов, содержащих значения данных. Другими словами, реляционная база данных представляет собой набор связанной информации или значений данных, хранящихся в двумерных таблицах.
Реляционная база данных имеет собственную терминологию, которая обычно используется в СУБД. Примеры включают отношение, атрибут, кортеж. домен, степень, кардинальность, первичный ключ, ключи-кандидаты и внешний ключ. Рассмотрим следующее краткое объяснение этих терминов:

• Отношение соответствует тому, что мы обычно называем таблицей.

• Кортеж соответствует строке в такой таблице, а атрибут соответствует таблице.

столбец.

• Первичный ключ — это уникальный идентификатор таблицы, т.е. столбец или столбец

сочетании со свойством, состоящим в том, что в любой момент времени ни одна из двух строк таблицы не содержит

одно и то же значение в этом столбце или комбинации столбцов.

• Ключи-кандидаты — это наборы атрибутов в отношении, которые могут быть выбраны в качестве ключа.

• Внешний ключ — это набор атрибутов в одном отношении, которые составляют первичный ключ

таблица другого отношения (или, возможно, та же самая).

Свойства отношений

Отношения обладают определенными свойствами, и все они являются непосредственными следствиями

определения "отношения". Есть четыре свойства, как показано ниже [Дата 90a]:

• Нет повторяющихся кортежей; это следует из того факта, что отношение является математическим множеством

(т.е. набором кортежей), а множества в математике по определению не включают повторяющиеся

элементы. Важным следствием является то, что в отношении всегда существует первичный ключ.

Поскольку каждый кортеж уникален, из этого следует, что по крайней мере комбинация всех атрибутов

отношения обладает свойством уникальности.

• Кортежи неупорядочены внутри отношения (сверху вниз), что следует из того факта, что множества в математике не упорядочены.

Все значения атрибутов являются атомарными. В каждой позиции строки и столбца в таблице всегда существует ровно одно значение, а не список значений. Однако

в качестве значения столбца определенного кортежа используется специальное значение "null", которое либо "неизвестно",

либо "атрибут не применяется", либо "не имеет значения".

• Атрибуты неупорядочены (слева направо), что следует из того факта, что заголовок

отношение также определяется как набор (т.е. набор атрибутов или, точнее, пар атрибут-

домен).
1. Реляционная алгебра

Реляционная алгебра - это метод объединения математических множеств, обладающих свойством быть отношениями (таблицами); он был предложен Коддом [Codd70]. Говорят, что это "процедурный" язык, что означает, что пользователь должен не только знать, чего он хочет

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

схемы для получения желаемого результата. Результат каждой операции формирует новое отношение, которым можно в дальнейшем манипулировать. Другими словами, реляционные операторы могут быть вложенными.

Операциями, включенными в Реляционную модель, являются: ОБЪЕДИНЕНИЕ, ПЕРЕСЕЧЕНИЕ, РАЗЛИЧИЕ, ДЕКАРТОВО ПРОИЗВЕДЕНИЕ, ВЫБОР, ПРОЕКТ и ОБЪЕДИНЕНИЕ.
Как и SQL, QBE также оснащен встроенными функциями, такими как CNT. (для

подсчета), SUM., MAX., MIN. и AVG. Однако в QBE функции SUM., CNT. и

AVG. применяются к значениям "distinctr". Если пользователь хочет, чтобы эта функция применялась ко всем

желаемым значениям, ее следует ввести, используя префикс "ALL" 4. QBE предоставляет оператор "G." в качестве агрегирующей функции группировки. Это аналогично предложению SQL GROUP BY, а

"поле условия" в QBE используется таким же образом, как и предложение в SQL. QBE также использует те же операторы сравнения, что и SQL, за исключением равенства (=). Поэтому пользователь явно вводит >, 2, < , S, прежде чем вводить постоянное значение. QBE также имеет символ отрицания

(=), который используется аналогично символу NOT EXISTS в SQL, но тот же

эффект также может быть получен с помощью оператора "4". Кроме того, QBE также имеет префиксы "AO." (для порядка возрастания) и "DO." (для порядка убывания), чтобы получить упорядоченный список кортежей.

роблемы с QBE

Как упоминалось выше, QBE очень интуитивно понятен даже для начинающих пользователей. Это позволяет

относительно неопытным пользователям начать задавать простые запросы, даже если они не имеют предварительных знаний о языках программирования. К сожалению, он становится все менее и менее полезным по мере увеличения сложности запросов и имеет проблемы с более сложными запросами [Ozso93].

Выражение универсальной количественной оценки в QBE, первоначально предложенное Zloof [Zloo77], действительно включало поддержку "НЕ СУЩЕСТВУЕТ", но это было сложно и всегда

несколько хлопотно [Date90a]. Однако сегодняшний QBE, выпущенный в качестве

коммерческого продукта, не может реализовать универсальную количественную оценку. Фактически, QBE, который мы

обсуждаем здесь (QBE в рамках IBM QMF), не поддерживает универсальную или экзистенциальную

количественную оценку формы "v" или "3". Таким образом, запросы, которые включают универсальные

количественная оценка не может быть указана [Date90a] [Elma89] [Ozso89]. Следовательно, она не

является относительно полной.


Список использованных интернет-ресурсов


№ п/п

Наименование интернет-ресурса

Ссылка на конкретную используемую страницу интернет-ресурса

1.


Информационный форум CyperPedia

https://cyberpedia.su/5x465.html

2.

*Данынй сайт не имеет названия, и представляет собой HTML-руководство технологии разработки клиент-серверных приложений*

http://bourabai.ru/dbt/client23.htm

3.




https://core.ac.uk/download/pdf/36723678.pdf

Список использованных источников


Данный раздел необязателен для заполнения


№ п/п


Библиографическое описание использованной литературы

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

Порядковый номер может проставляться как вручную, так и автоматически.

Количество строк в таблице должно строго соответствовать количеству внесенных в нее использованных источников. Пустых строк в таблице быть не должно.

В данной колонке разместите библиографические описания использованных источников.
















Приложения


Данный раздел необязателен для заполнения


Здесь разместите порядковую букву приложения. Нумерация приложений должна быть сквозная, за исключением букв Ё, З, Й, О, Ч, Ь, Ы, Ъ.

Порядковый номер может проставляться как вручную, так и автоматически.

Количество строк в таблице должно строго соответствовать количеству приложений. Пустых строк в таблице быть не должно.

Здесь разместите файл приложения.








написать администратору сайта