Академический Документы
Профессиональный Документы
Культура Документы
ВВЕДЕНИЕ...................................................................................................................4
1 ПОСТРОЕНИЕ ИНФОЛОГИЧЕСКОЙ КОНЦЕПТУАЛЬНОЙ МОДЕЛИ..........5
1.1 Анализ предметной области и выявление необходимого набора
сущностей......................................................................................................................5
1.2 Обоснование требуемого набора атрибутов для каждой сущности и
выделение идентифицирующих атрибутов................................................................6
1.3 Определение связей между объектами.............................................................8
2 ПОСТРОЕНИЕ СХЕМЫ РЕЛЯЦИОННОЙ БАЗЫ ДАННЫХ.............................9
2.1 Построение набора необходимых отношений базы данных..........................9
2.2 Задание первичных и внешних ключей определенных отношений..............9
2.3 Третья нормальная форма................................................................................10
2.4 Определение ограничений целостности для внешних ключей отношений
и для отношений в целом...........................................................................................10
3 СОЗДАНИЕ СПРОЕКТИРОВАННОЙ БАЗЫ ДАННЫХ...................................12
4 ЗАПИСЬ ВЫРАЖЕНИЙ, УКАЗАННЫХ В ВАРИАНТЕ ЗАДАНИЯ ТИПОВ
ЗАПРОСОВ НА ЯЗЫКЕ SQL....................................................................................16
5 ВЫБОР И ОСНОВАНИЕ СРЕДСТВ РАЗРАБОТКИ ПРИЛОЖЕНИЯ..............17
6 ОПИСАНИЕ РЕАЛИЗАЦИИ И ТЕСТИРОВАНИЯ ПО......................................19
6.1 Детальная реализация функциональных частей ПО.....................................19
6.2 Выполнение программного кода на языке PHP.............................................20
ЗАКЛЮЧЕНИЕ...........................................................................................................22
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ..................................................23
ПРИЛОЖЕНИЕ А (обязательное) Инфологическая модель базы данных...........24
ПРИЛОЖЕНИЕ Б (обязательнон) Набор необходимых отношений базы данных
.......................................................................................................................................25
ГЯИ.466514.ПЗ
Изм Лист № докум. Подпись Дата
Разраб. .
Гордынский Лит Лист Листов
Проверил Я.И. «Информационная 3 25
Пантелейко А.Ф.
Реценз. система торговой сети» Учреждение образования «Полоцкий
Н. Контр. государственный университет»,
Утв. гр.18-ИТ-2
ВВЕДЕНИЕ
Лист
ГЯИ.466514.ПЗ
5
Изм. Лист № докум. Подпись Дата
1 Построение инфологической концептуальной модели
Лист
ГЯИ.466514.ПЗ
5
Изм. Лист № докум. Подпись Дата
1.2 Обоснование требуемого набора атрибутов для каждой сущности
и выделение идентифицирующих атрибутов
Лист
ГЯИ.466514.ПЗ
5
Изм. Лист № докум. Подпись Дата
start (Дата начала);
finish (Дата окончания).
6. discount_card (Дисконтные карты):
id;
name (Название);
percent (Процент скидки).
7. posts (Должности):
id;
title (Название);
description (Описание).
8. product (Должности):
id;
title (Название);
description (Описание);
cost (Цена за единицу);
category_id (Код категории).
9. product_in_places (Товар в точках):
id;
place_id (Код точки);
product_id (Код товара);
quantity (Количество).
10. purchase (Продажи):
id;
user_id (Код пользователя);
client_id (Код клиента);
product_id (Код товара);
place_id (Код точки)
quantity (Количество);
delivery (Доставка);
payment (Способ оплаты);
date (Дата проведения продажи).
11. trade_places (Продажи):
id;
title (Название);
description (Описание);
address (Адресс).
12. users_posts (Должности пользователей):
id;
user_id (Код пользователя);
post_id (Код должности).
Лист
ГЯИ.466514.ПЗ
5
Изм. Лист № докум. Подпись Дата
1.3 Определение связей между объектами
Лист
ГЯИ.466514.ПЗ
5
Изм. Лист № докум. Подпись Дата
2 ПОСТРОЕНИЕ СХЕМЫ РЕЛЯЦИОННОЙ БАЗЫ ДАННЫХ
Лист
ГЯИ.466514.ПЗ
5
Изм. Лист № докум. Подпись Дата
place_id;
12 advertisings id user_id;
product_id;
В дальнейшем построении схемы реляционной базы данных ключи будут
служить для организации связей между отношениями.
Лист
ГЯИ.466514.ПЗ
5
Изм. Лист № докум. Подпись Дата
Целостность данных – это механизм поддержания соответствия базы
данных предметной области. В реляционной модели данных определены два
базовых требования обеспечения целостности:
целостность ссылок;
целостность сущностей.
Объект реального мира представляется в реляционной базе данных как
кортеж некоторого отношения. Требование целостности сущностей
заключается в следующем: каждый кортеж любого отношения должен
отличатся от любого другого кортежа этого отношения (т.е. любое отношение
должно обладать первичным ключом).
Вполне очевидно, что если данное требование не соблюдается (т.е.
кортежи в рамках одного отношения не уникальны), то в базе данных может
хранится противоречивая информация об одном и том же объекте.
Поддержание целостности сущностей обеспечивается средствами системы
управления базой данных (СУБД). Это осуществляется с помощью двух
ограничений:
при добавлении записей в таблицу проверяется уникальность их
первичных ключей;
не позволяется изменение значений атрибутов, входящих в
первичный ключ.
Лист
ГЯИ.466514.ПЗ
5
Изм. Лист № докум. Подпись Дата
3 СОЗДАНИЕ СПРОЕКТИРОВАННОЙ БАЗЫ ДАННЫХ
Лист
ГЯИ.466514.ПЗ
5
Изм. Лист № докум. Подпись Дата
Таблица 3.3 – Характеристика атрибутов таблицы categories
Имя атрибута Тип Описание
id id Код
title varchar(100) Название категории
descriptiont text Описание категории
Лист
ГЯИ.466514.ПЗ
5
Изм. Лист № докум. Подпись Дата
Таблица posts содержит список всех должностей системы. Ее структура
приведена в таблице 3.7.
Таблица 3.7 – Характеристика атрибутов таблицы posts
Имя атрибута Тип Описание
id id Код
title varchar(255) Название должности
description text Описание должности
Лист
ГЯИ.466514.ПЗ
5
Изм. Лист № докум. Подпись Дата
Продолжение таблицы 3.10
product_id id Код товара
place_id id Код торговой точки
quantity int Количество товара
delivery tinyint(1) Доставка
payment varchar(55) Способ оплаты
date timestamp Дата продажи
Лист
ГЯИ.466514.ПЗ
5
Изм. Лист № докум. Подпись Дата
4 ЗАПИСЬ ВЫРАЖЕНИЙ, УКАЗАННЫХ В ВАРИАНТЕ ЗАДАНИЯ
ТИПОВ ЗАПРОСОВ НА ЯЗЫКЕ SQL
Лист
ГЯИ.466514.ПЗ
5
Изм. Лист № докум. Подпись Дата
5 ВЫБОР И ОСНОВАНИЕ СРЕДСТВ РАЗРАБОТКИ
ПРИЛОЖЕНИЯ
Лист
ГЯИ.466514.ПЗ
5
Изм. Лист № докум. Подпись Дата
С 2018 года появилось расширение Python для Visual Studio Code с
открытым исходным кодом. Оно предоставляет разработчикам широкие
возможности для редактирования, отладки и тестирования кода.
Также VS Code поддерживает редактирование и выполнение файлов
типа «Блокнот Jupyter» (Jupyter Notebook (англ.)) напрямую «из коробки» без
установки внешнего модуля в режиме визуального редактирования и в режиме
редактирования исходного кода.
Лист
ГЯИ.466514.ПЗ
5
Изм. Лист № докум. Подпись Дата
6 ОПИСАНИЕ РЕАЛИЗАЦИИ И ТЕСТИРОВАНИЯ ПО
Лист
ГЯИ.466514.ПЗ
5
Изм. Лист № докум. Подпись Дата
Рисунок 6.3 – Создание пользователя
Данная программа имеет в своем распоряжении множество
информационных сообщений, которые направлены на более удобное
использование. Также учтены возможные случаи некорректной работы
программы, поэтому некоторое количество нештатных ситуаций
сопровождается оповещениями (рисунок 6.4).
Лист
ГЯИ.466514.ПЗ
5
Изм. Лист № докум. Подпись Дата
$options = [PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION];
try {
$pdo = new
PDO("$driver:host=$host;dbname=$db_name;charset=$charset",
$db_user, $db_pass, $options);
} catch (Exception $e) {
die($e->getMessage());
}
Пример выполнения запроса можно увидеть в листинге 6.2.
Листинг 6.2 – Выполнение запроса
$sql = 'SELECT `post_id` FROM `users_posts` WHERE `user_id`=?';
$id = [$_SESSION['id']];
$stmt = $pdo->prepare($sql);
$stmt->execute($id);
$user_post = $stmt->fetch(PDO::FETCH_ASSOC);
Для защищенного выполнения запроса передаем параметры в массив.
При выполнении sql-запроса передаем этот массив с параметрами. При такой
передачи данные в массиве проверяются на sql-инъекцию.
Лист
ГЯИ.466514.ПЗ
5
Изм. Лист № докум. Подпись Дата
ЗАКЛЮЧЕНИЕ
Лист
ГЯИ.466514.ПЗ
5
Изм. Лист № докум. Подпись Дата
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
Лист
ГЯИ.466514.ПЗ
5
Изм. Лист № докум. Подпись Дата
ПРИЛОЖЕНИЕ А
(обязательное)
Инфологическая модель базы данных
Лист
ГЯИ.466514.ПЗ
5
Изм. Лист № докум. Подпись Дата
ПРИЛОЖЕНИЕ Б
(обязательное)
Набор необходимых отношений базы данных
Лист
ГЯИ.466514.ПЗ
5
Изм. Лист № докум. Подпись Дата