Добавил:
при поддержке музыки группы Anacondaz Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
проект / МИС епта.docx
Скачиваний:
18
Добавлен:
22.03.2024
Размер:
328.19 Кб
Скачать
  1. Определение запросов к бд

    1. Задание на этап

В результате выполнения предыдущих этапов, наша бригада создала базу данных «Кулинария» в СУБД MySQL. На данном этапе нам необходимо разработать запросы к БД «Кулинария».

План работы:

1. Определить круг запросов, которые могут потребоваться пользователю при работе с информационной системой и базой данных.

2. Сформировать физическую базу данных.

3. Составить отчет о проделанной работе

    1. Ход работы

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

Для начала определим, что обозначает понятие «Запрос». Запрос – это объект БД, позволяющий производить основные операции по обработке данных: сортировку, фильтрацию, объединение данных из разных источников, преобразование данных – и сохранять результаты с некоторым именем, чтобы в дальнейшем использовать их по мере необходимости. Главное предназначение запросов — это отбор данных на основании заданных условий. Запрос объединяет в себе возможности, предоставляемые сортировкой и фильтрацией. Он особенно удобен тем, что позволяет сохранить критерии отбора и сортировки с некоторым именем, чтобы задавать их каждый раз заново. Так же при помощи запроса можно создать так называемые вычисляемые поля, в которых производится преобразование данных в другой вид при помощи формул.

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

На рисунке 6.1 представлена схема взаимодействия пользователя с системой.

Рисунок 6.1 - Схема взаимодействия пользователя с системой

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

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

Так как модель взаимодействия - ролевая, обозначим существующие роли в нашей системе:

  • Гость;

  • Авторизованный пользователь;

  • Модератор.

Алгоритм распределения ролей представлен на рисунке 6.2.

Рисунок 6.2 - Алгоритм распределения ролей

Запросы бывают на выборку, обновление, добавление, удаление и на создание таблиц. Различают постоянные запросы (те запросы, в которых условия выбора информации не меняются в течении длительного времени) и параметрические (те запросы, в которых параметры выбора информации изменяются).

В зависимости от роли пользователи могут совершать различные запросы. Алгоритм логики обработки запросов представлен на рисунке 6.3.

Рисунок 6.3 - Алгоритм логики обработки запросов

Таблица 6.1. - Разрешенные запросы

Роль

Разрешённые запросы

Гость

Просмотр, поиск, создание аккаунта

Авторизованный пользователь

Просмотр, поиск, создание рецепта блюда, редактирование своих рецептов блюд, своих рецептов блюд

Модератор

Просмотр, поиск, редактирование любых рецептов блюд, удаление любых рецептов блюд, блокировка аккаунтов

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

Запросы на выборку может осуществить любой участник системы (авторизованный/неавторизованный пользователь, модератор):

  • Выбрать самые популярные рецепты блюда (таблица “Блюдо”);

  • Выбрать рецепты с самым высоким рейтингом (таблица “Блюдо”);

  • Показать блюда, относящиеся к конкретной категории (таблица “Блюдо”);

  • Сделать выборку блюда по конкретным параметрам, например нужным ингредиентам или существующим аллергенам (таблица “Блюдо”).

Запросы на добавление, удаление и обновление данных в таблицы. Осуществлять такие запросы может модератор и авторизованный пользователь.

  • Добавление\обновление\удаление рецепта блюда (таблица “Блюдо”). Примечание: модератор может добавлять/обновлять/удалять любой рецепт. Авторизованный пользователь - только тот, что написал сам;

  • Добавление\обновление\удаление комментария (таблица “Комментарии“);

  • Добавление\обновление\удаление пользователя (таблица “Пользователь”).

Соседние файлы в папке проект