Добавил:
Рад, если кому-то помог Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Методички по лабам ПрБД, 2 курс 3 семестр (для ИВТ и т.п.) / ПБД_метод к лабам_часть 2_v03 [2022-2023]

.pdf
Скачиваний:
34
Добавлен:
09.10.2025
Размер:
6 Мб
Скачать
☆

Примечание:

Рекомендуется имя первого поля (столбец) в таблице обозначать символами «Id» и присваивать ему тип INT (целое), длина этого поля прогнозируется максимальным числом строк, которое может содержаться в таблице. Тип поля INT использует 4 байта для хранения значения. Минимально значение -2147483648, максимальное 2147483647. Беззнаковый INT (unsigned) хранит значения от 0 до 4 294 967 295.

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

Помимо обычных характеристик столбцов хранимой таблицы базы данных, каждая таблица должна иметь столбец (столбцы) для идентификации уникальности объектов, отображаемых в данной хранимой таблице. Такой столбец (столбцы) получает статус ключа и в форме Рис. 7 фиксируются в столбце Индекс (значение Primary).

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

Сохраните созданную таблицу (кнопка Сохранить в нижней правой части экрана). В результате в левой части экрана под названием вашей БД отобразится созданная таблица.

1.2.4Изменение структуры таблицы

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

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

11

Рис. 8 – Редактирование структуры таблицы

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

Рис. 9 – Добавление нового атрибута

12

1.2.5Заполнение таблицы данными

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

Рис. 10 – Заполнение записей

Если заполнили все данные для первой строки таблицы, то следует нажать кнопку ОК (Рис. 10) и на экран будет выведено следующее окно (Рис. 11). Вкладка Обзор станет доступной. При переходе на вкладку Обзор в центральной части отобразятся все записи таблицы.

Рис. 11 – SQL-запрос о вводе данных

13

Рис. 12 – Таблица с заполненными данными

1.3Создание пользователей БД

Примечание:

Данный раздел выполнить только на локальном сервере (на домашней компьютере). В вузе у студентов отсутствуют права для назначения и задания привилегий пользователя.

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

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

Рис. 13 – Вкладка Привилегии

14

Добавьте здесь новую учетную запись пользователя, добавив его имя, хост и пароль (Рис. 14). Для примера использован пароль 12345. После ввода всех данных нажмите на кнопку Добавить пользователя.

Рис. 14 – Создание нового пользователя

В результате вы увидите список пользователей вашей БД (Рис. 15).

Теперь по ссылке Редактирование привилегий перейдите в следующее окно (Рис. 16) и там задайте требуемые права пользователя. После чего сохраните изменения.

15

Рис. 15 – Перечень пользователей БД

Рис. 16 – Окно задания привилегий

Чтобы удалить созданного пользователя, необходимо перейти в основное окно phpMyAdmin, выбрать вкладку Пользователи. Выбрать пользователя, которого планируете удалить и нажать на кнопку Удалить выделенного пользователя (Рис. 17).

16

Рис. 17 – Окно Пользователи

Задание на выполнение лабораторной работы

1.Ознакомиться с основными возможностями среды phpMyAdmin.

2.Создать новую базу данных с помощью приложения phpMyAdmin.

3.Создать в новой БД две таблицы в соответствии с вашим индивидуальным вариантом. Для каждой таблицы должны быть заданы идентификаторы (первичные ключи).

4.В таблицы необходимо добавить 15 – 20 записей.

5.Создать 2-3 пользователей и назначить им разные привилегии (на локальном сервере).

6.Подготовить отчет.

Требования к отчету

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

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

17

Лабораторная работа №2. Создание структуры нормализованной БД в phpMyAdmin

Тема: Разработка инфологической модели базы данных в phpMyAdmin

Цель лабораторной работы: в ходе выполнения лабораторной работы в phpMyAdmin необходимо создать структуру базы данных с соблюдением требований аппарата нормальных форм.

Задачи:

1.Научиться связывать между собой таблицы.

2.Научиться создавать логическую модель в phpMyAdmin.

3.Внести записи во все созданные таблицы.

2.1Общие теоретические сведения

Существует несколько концепций моделей баз данных (иерархическая, сетевая, объектная, реляционная). Наиболее распространенной моделью является реляционная модель, которая очень тесно переплетается с принципами объектно-ориентированного анализа и еще одного популярного подхода в моделировании данных – ER-модели (модель «сущностьсвязь»).

ER-модель удобна для начального проектирования, поскольку она интуитивно понятна большинству пользователей. В ней выделяются понятия сущности (основные объекты базы), атрибуты (свойства сущности) и связи (взаимодействия между сущностями). Реляционная модель представляет всю базу данных как набор связанных таблиц. Большинство таблиц отвечает за хранение информации о сущностях (столбцы таблиц характеризуют их атрибуты). Среди атрибутов сущности выделяют ключевые атрибуты – атрибуты, которые являются идентифицирующими, точно определяющими запись, объект сущности. С помощью внедрения ключевых атрибутов одних сущностей (родительские таблицы) в качестве столбцов в другие таблицы (дочерние) реализуются различные связи между сущностями (один- к-одному (1:1), один-ко-многим (1:N) и многие-ко-многим (N:M)).

ER-модель должна быть нормализована, т.е. все таблицы вашей БД должны соответствовать как минимум трем нормальным формам:

−1НФ: таблица находится в 1НФ, если все ее поля содержат только простые неделимые значения.

18

−2НФ: таблица находится во 2НФ, если она удовлетворяет 1 ФН и неключевые поля функционально полно зависят от первичного ключа.

−3НФ: таблица находится в 3 НФ, если она удовлетворяет требованиям 2НФ и не содержит нетранзитивных зависимостей.

Нормализация – это процесс организации данных в БД, включающий создание таблиц и установление отношений между ними в соответствии с правилами, которые обеспечивают защиту данных и делают БД более гибкой, устраняя избыточность и несогласованные зависимости.

Более подробно вопросы создания ER-модели и применения аппарата нормальных форм освещены в [1, 2].

Примечание:

Корректнее сначала создать структуру всех таблиц БД (ER-модель), создать связи между таблицами и только потом вносить записи в сами таблицы.

Для последующих иллюстраций будет рассмотрен пример автоматизации книжного магазина. Книжный магазин – торгово-закупочная фирма, которая осуществляет продажу книгопечатной продукции. На детскую и профессиональную литературу спрос есть практически всегда. Основной проблемой этого бизнеса является наличие большого ассортимента и необходимость его систематизации. Одним из методов повышения рентабельности этого бизнеса является автоматизация книжного магазина. Она упрощает операционные процессы для продавцов и делает работу руководителей более эффективной. Кроме того, автоматизация должна комплексно решать вопрос увеличения клиентского потока и повышения лояльности покупателей.

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

Для рассмотренного примера упрощенная ER-модель представлена ниже (Рис. 18).

19

Рис. 18 – ER-модель рассматриваемого примера

2.2 Создание ER-модели в PhpMyAdmin

2.2.1Связывание через внешние ключи

В ER-модели связь между таблицами организуется через механизм внешних ключей. Практика показала, что связи удобно держать в самой базе данных. Все дело в ограничениях и действиях при изменении, которые можно наложить на связи. Например, можно запретить удалять категорию, если с ней связана хотя бы одна заметка; или удалить все заметки, если удалена категория; или установить NULL в связующее поле. В любом случае, с помощью связей повышается отказоустойчивость и надежность приложения.

Требование: движок таблиц должен быть InnoDB.

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

20