База данных школы пример
База данных школы пример
В течение многих лет преимущественно использовались плоские таблицы (плоские БД) типа списков в Excel. В настоящее время наибольшее распространение при разработке БД получили реляционные модели данных. Реляционная модель данных является совокупностью простейших двумерных таблиц – отношений (англ. relation), т.е. простейшая двумерная таблица определяется как отношение (множество однотипных записей объединенных одной темой).
От термина relation (отношение) происходит название реляционная модель данных. В реляционных БД используется несколько двумерных таблиц, в которых строки называются записями, а столбцы полями, между записями которых устанавливаются связи. Этот способ организации данных позволяет данные (записи) в одной таблице связывать с данными (записями) в других таблицах через уникальные идентификаторы (ключи) или ключевые поля.
Основные понятия реляционных БД: нормализация, связи и ключи .
1. Принципы нормализации:
2. Виды логической связи.
Связь устанавливается между двумя общими полями (столбцами) двух таблиц.
Существуют связи с отношением «один-к-одному», «один-ко-многим» и «многие-ко-многим».
Отношения, которые могут существовать между записями двух таблиц:
- один – к — одному, каждой записи из одной таблицы соответствует одна запись в другой таблице;
- один – ко — многим, каждой записи из одной таблицы соответствует несколько записей другой таблице;
- многие – к — одному, множеству записей из одной таблице соответствует одна запись в другой таблице;
- многие – ко — многим, множеству записей из одной таблицы соответствует несколько записей в другой таблице.
Тип отношения в создаваемой связи зависит от способа определения связываемых полей:
- Отношение «один-ко-многим» создается в том случае, когда только одно из полей является полем первичного ключа или уникального индекса.
- Отношение «один-к-одному» создается в том случае, когда оба связываемых поля являются ключевыми или имеют уникальные индексы.
- Отношение «многие-ко-многим» фактически является двумя отношениями «один-ко-многим» с третьей таблицей, первичный ключ которой состоит из полей внешнего ключа двух других таблиц.
Ключ – это столбец (может быть несколько столбцов), добавляемый к таблице и позволяющий установить связь с записями в другой таблице. Существуют ключи двух типов: первичные и вторичные или внешние.
Первичный ключ – это одно или несколько полей (столбцов), комбинация значений которых однозначно определяет каждую запись в таблице. Первичный ключ не допускает значений Null и всегда должен иметь уникальный индекс. Первичный ключ используется для связывания таблицы с внешними ключами в других таблицах.
Внешний (вторичный) ключ — это одно или несколько полей (столбцов) в таблице, содержащих ссылку на поле или поля первичного ключа в другой таблице. Внешний ключ определяет способ объединения таблиц.
Из двух логически связанных таблиц одну называют таблицей первичного ключа или главной таблицей, а другую таблицей вторичного (внешнего) ключа или подчиненной таблицей.
Существует три типа первичных ключей: ключевые поля счетчика (счетчик), простой ключ и составной ключ.
- Поле счетчика (Тип данных «Счетчик»). Тип данных поля в базе данных, в котором для каждой добавляемой в таблицу записи в поле автоматически заносится уникальное числовое значение.
- Простой ключ. Если поле содержит уникальные значения, такие как коды или инвентарные номера, то это поле можно определить как первичный ключ. В качестве ключа можно определить любое поле, содержащее данные, если это поле не содержит повторяющиеся значения или значения Null.
- Составной ключ. В случаях, когда невозможно гарантировать уникальность значений каждого поля, существует возможность создать ключ, состоящий из нескольких полей. Чаще всего такая ситуация возникает для таблицы, используемой для связывания двух таблиц многие — ко — многим.
В поле первичного ключа должны быть только уникальные значения в каждой строке таблицы, т.е. совпадение не допускается, а в поле вторичного или внешнего ключа совпадение значений в строках таблицы допускается.
Если возникают затруднения с выбором подходящего типа первичного ключа, то в качестве ключа целесообразно выбрать поле счетчика.
Этапы проектирования БД.
- Исследование предметной области;
- Анализ данных (сущностей и их атрибутов) ;
- Определение отношений между сущностями и определение первичных и вторичных (внешних) ключей.
В процессе проектирования определяется структура реляционной БД (состав таблиц, их структура и логические связи). Структура таблицы определяется составом столбцов, типом данных и размерами столбцов, ключами таблицы.
К базовым понятиями модели БД «сущность – связь» относятся: сущности, связи между ними и их атрибуты (свойства).
Сущность – любой конкретный или абстрактный объект в рассматриваемой предметной области.
Сущности – это базовые типы информации, которые хранятся в БД (в реляционной БД каждой сущности назначается таблица). К сущностям могут относиться: студенты, клиенты, подразделения и т.д.
Атрибут – это свойство сущности в предметной области. Его наименование должно быть уникальным для конкретного типа сущности. Например, для сущности студент могут быть использованы следующие атрибуты: фамилия, имя, отчество, дата и место рождения, паспортные данные и т.д. В реляционной БД атрибуты хранятся в полях таблиц.
Связь – взаимосвязь между сущностями в предметной области. Связи представляют собой соединения между частями БД (в реляционной БД – это соединение между записями таблиц).
В данной БД должны храниться данные об учениках, классах, об успеваемости учащихся по различным предметам.
2)Определим сущности, атрибуты сущностей:
Основными предметно-значимыми сущностями нашей БД являются:
- Учащиеся,
- Классы,
- Предметы,
- Успеваемость.
Основные предметно-значимые атрибуты сущностей:
- учащиеся – фамилия, имя, отчество, пол, дата рождения;
- классы – название, литера;
- предметы– название;
- успеваемость – оценка, вид контроля.
3)Устанавливаем логические связи между таблицами .
- между таблицами Учащиеся и Успеваемость необходимо установить связь один – ко – многим ( каждой записи из таблицы Учащиеся соответствует несколько записей в таблице Успеваемость, так как у каждого ученика может быть несколько оценок)
- между таблицами Классы и Учащиеся необходимо установить связь один – ко – многим исходя из того, что в классе имеется много учеников, а каждый ученик входит в состав одного класса.
- между таблицами Предметы и Успеваемость определена связь как один – ко – многим, потому что по каждой дисциплине может быть поставлено несколько оценок различным учащимся.
На основе вышеизложенного составляем модель сущность – связь для БД «Учебная часть»:
— стрелка является условным обозначением связи: один – ко – многим.
Информационные технологии. 10 класс (Базовый уровень)
§ 1. Понятие базы данных. Система управления базами данных (СУБД)
1.1. Базы данных. Поле. Запись
Основой современных информационных технологий являются данные. Практически все информационные системы в той или иной степени связаны с функциями долговременного хранения и обработки данных. Информация является фактором, определяющим эффективность любой сферы деятельности.
Данные, предназначенные для компьютерной обработки, целесообразно структурировать, т. е. организовывать определенным образом. Именно структурирование позволяет пользователю оптимизировать работу с данными (сократить время поиска, обеспечить эффективное хранение, исключить ошибки при обработке).
База данных (БД) — совокупность взаимосвязанных и организованных определенным образом данных.
Базы данных можно классифицировать исходя из способов организации их хранения и обработки:
1. Иерархическая. Такую модель можно изобразить в виде дерева, состоящего из объектов различных уровней.
2. Сетевая. Является обобщением иерархической, т. е. каждый элемент вышестоящего уровня может быть связан с любыми элементами следующего уровня.
3. Реляционная. В такой модели данные организованы в виде таблиц, между которыми установлены связи.
Рассмотрим реляционные БД, как наибольший распространенный в сегодняшнее время.
Таблицы состоят из строк и столбцов. В таблицах баз данных — это записи и поля.
Запись — строка таблицы базы данных, содержащая данные об одном объекте.
В таблице из примера 1.1 пять записей и каждая запись содержит данные об определенном киносеансе.
Поле — столбец таблицы базы данных, в котором указываются значения определенного свойства объектов базы данных.
В таблице из примера 1.1 (п. 3) четыре поля: «Кинотеатр», «Фильм», «Время», «Стоимость».
Взаимодействие с базами данных лежит в основе функционирования многих ресурсов в Интернете.
Электронный школьный журнал работает с базой данных, содержащей информацию о педагогическом коллективе учреждения образования, об учащихся, классах, учебных предметах, отметках и т. д.
Доступ к базе данных необходим при оплате товаров в супермаркете, когда кассир считывает штрих-код с покупок, а также при поиске товаров в интернет-магазинах.
При посещении Национальной библиотеки обычно приходится обращаться к базе данных, содержащей сведения обо всех книгах, имеющихся в этой библиотеке, о ее читателях, заявках на бронирование книг и т. д.
В спорте тренеры используют базы данных , чт обы разрабатывать стратегию игры, программы питания и тренировок спортсменов или планировать виды взаимодействия с болельщиками.
Пример 1.1. Классификация баз данных.
3. Таблица реляционной БД.
Франк Кодд (23 августа 1923 г. — 18 апреля 2003 г.) — британский ученый, труды которого заложили основы теории реляционных баз данных. Работая в компании IBM, он установил правила, определяющие базу данных как реляционную.
База данных школы пример
Курсовая работа по базам данных (GeekUniversity, факультет Аналитики Big Data)
Требования к курсовому проекту
- Составить общее текстовое описание БД и решаемых ею задач;
- минимальное количество таблиц — 10;
- скрипты создания структуры БД (с первичными ключами, индексами, внешними ключами);
- создать ERDiagram для БД;
- скрипты характерных выборок (включающие группировки, JOIN’ы, вложенные таблицы);
- представления (минимум 2);
- хранимые процедуры / триггеры;
Примеры: описать модель хранения данных популярного веб-сайта: кинопоиск, booking.com, wikipedia, интернет-магазин, geekbrains, госуслуги.
Думайте об этом задании, как о том, чем Вы похвастаетесь на своем следующем собеседовании.
Суть проекта MOVIELISTA — упрощенная модель хранения данных сервиса IMDb с добавлением элементов социальной сети и акцентом на составление списков.
Всё начинается с самых простых, редко изменяющихся данных: список стран, кинокомпаний, жанров, всевозможных профессий/позиций в производственном процессе и список типов экранных сущностей (так как это могут не только фильмы, но и, например, сериалы, в базе они называются абстрактно titles).
- Название
- Оригинальное название (необязательно)
- Тип (фильм, сериал, анимация, короткометражка и тд)
- Постер
- Теглайн
- Синопсис
- Дата выхода
- Возрастное ограничение
- Состав съемочной группы
- Компания-производитель (может быть несколько)
- Страна (может быть несколько)
- Жанр (может быть несколько)
Главная движущая сила сервиса – это, естественно, пользователи Их регистрационные данные (таблица users):
- Username
- Номер телефона
- Пароль
Дополнительная информация, которую пользователь может предоставить, заполнив свой профиль:
- Аватар
- Имя
- Фамилия
- Дата рождения
- Страна
- О себе
- Приватность аккаунта
Самое интересное кроется в возможностях пользователя, которые в MovieLista достаточно обширны.
ИТАК, ПОЛЬЗОВАТЕЛИ МОГУТ:
Действия с другими пользователями:
- Подписываться друг на друга
- Переписываться друг с другом
Действия со списками:
- Добавлять фильмы в список «Буду смотреть»
- Отправлять фильмы в список «Просмотрено»
- Создавать свои собственные списки фильмов (например, сохраняя свои поисковые запросы: «хочу все китайские дорамы про вампиров, вышедшие после 2000» или совсем просто – «мои любимые сериалы отобранные мной вручную»)
- Подписываться на списки других пользователей
- Подписываться на конкретный жанр (чтобы получать уведомления о выходе нового триллера, например)
- Подписываться на ключевые слова – это что-то вроде меток (хочу узнавать, когда чему-то поставят метку «лакорн»)
Выражать свое мнение:
- Выставлять фильму рейтинг
- Писать отзывы на фильмы
- Лайкать/дизлайкать отзывы других пользователей
- Лайкать/дизлайкать указанный жанр фильма (ведь часто бывает, что заявленный, например, триллер в фильме так и не наступает)
- Предлагать свой вариант жанра (из списка существующих)
- Проставлять фильму ключевые слова/метки (новые или из списка уже добавленных),
- Лайкать/дизлайкать метки, поставленные другими пользователями
Лайки/дизлайки позволяют вычислять в списках фильмов те, которые по мнению пользователей наиболее ярко выражают жанр или тему (по метке). В сочетании с возможностями разных подписок такое выражение мнения сильно облегчает подбор рекомендаций для конкретного пользователя и подбор похожих фильмов.
Для демонстрации работы скриптов с помощью сервиса filldb.info были сформированы абсолютно бессмысленные данные
About
Курсовая работа по базам данных (GeekUniversity, факультет Аналитики Big Data)
База данных школы пример
Урок 8. Этапы создания многотабличной БД с помощью реляционной СУБД.
Практическая работа № 2. Знакомство с СУБД Access
Практикум
Практическая работа №1.3. "Знакомство с СУБД LibreOffice Base"
Цель работы: освоение простейших приемов работы с готовой базой данных в среде СУБД LibreOffice Base:
• открытие базы данных;
• просмотр структуры БД;
• просмотр содержимого БД в режимах Таблица и Форма;
• добавление записей через форму;
• быстрая сортировка таблицы;
• использование фильтра.
Используемые программные средства: LibreOffice Base.
Примечание. Для выполнения этой работы предварительно должна быть подготовлена однотабличная база данных «Компьютерная школа», структура и содержание которой описаны в Приложении к данной работе, а также создана форма к этой таблице. В дальнейшем таблицу, в которой хранятся сведения об учениках школы, а также соответствующую форму будем называть «Ученик».
Справочная информация
Существуют СУБД, ориентированные на программистов и ориентированные на конечного пользователя. Любые действия, выполняемые с базой данных, производятся на компьютере с помощью программ. СУБД, ориентированные на программистов, фактически являются системами программирования со своим специализированным языком, в среде которых программисты создают программы обработки баз данных. Затем с этими программами работают конечные пользователи. К числу СУБД такого типа относятся Visual FoxPro, Oracle, Informix и др.
СУБД LibreOffice Base относится к системам, ориентированным на конечного пользователя. Она позволяет пользователю, не прибегая к программированию, легко выполнять основные действия с базой данных: создание, редактирование и манипулирование данными. СУБД LibreOffice Base входит в состав свободно распространяемого офисного пакета LibreOffice (аналог коммерческого пакета Microsoft Office). Данный пакет является кроссплатформенным, т. е. существуют его версии для различных операционных систем (Windows, Linux, Mac). С помощью Base создаются и эксплуатируются персональные базы данных с относительно небольшим объемом информации. Для создания крупных промышленных информационных систем данный пакет не подходит.
Среда LibreOffice Base с окном базы данных на рабочем поле:
Среда Base имеет интерфейс, характерный для windows-приложений, и включает в себя следующие составляющие: титульную строку с кнопками управления окном, главное меню, панель инструментов, рабочее поле и строку состояния. На рабочем поле устанавливается окно, состоящее из трех основных частей:
1) База данных. Содержит названия основных типов объектов, с которыми работает Base (Таблицы, Запросы, Формы, Отчеты);
2) Задачи. Содержит список задач, которые можно решить для выбранного объекта.
3) Источник данных. Здесь можно выбрать источник данных для работы (определенную таблицу, форму, запрос или отчет).
Данные, с которыми работает СУБД, также могут быть выстроены в иерархическую последовательность. На верхнем уровне такой иерархии находятся основные объекты Base. К ним относятся: таблицы, запросы, формы, отчеты.
Таблица — это главный тип объекта. Все остальные разновидности объектов являются производными от таблицы. Элементы данных, составляющих таблицу, — это записи и поля. Свойства элементов таблицы определяются типами, форматами полей и некоторыми другими параметрами.
Форма — это вспомогательный объект, без которого, в принципе, можно обойтись. Формы создаются для повышения удобства пользователя при просмотре, вводе и редактировании данных в таблицы.
Запрос — результат обращения пользователя к СУБД для поиска данных, добавления, удаления и обновления записей. Результат поиска (выборки) данных представляется в табличном виде. Термином «запрос» называют также сами команды обращения к СУБД.
Отчет — это документ, предназначенный для вывода на печать, сформированный на основании информации, содержащейся в таблицах и запросах.
Еще одним особым видом данных являются связи — описание структуры связей в многотабличной базе данных.
Режимы работы СУБД LibreOffice Base многообразны. Так же как и для других приложений Windows, иерархия режимов реализована через главное меню. Есть режимы общего характера: работа с файлами (меню Файл); работа с буфером обмена (меню Правка); режим настройки среды (меню Вид); справочный режим (меню Справка). Однако основным режимом можно назвать режим работы с базой данных. Он устанавливается после выполнения команды Файл -> Создать базу данных или Файл -> Открыть базу данных. Поскольку база данных хранится в файле, в первом случае система потребует задать имя и место хранения файла, а во втором — указать на существующий файл с базой данных.
После раскрытия на экране окна базы данных становятся доступными подрежимы работы с основными объектами Base: таблицами, запросами, формами и отчетами, которые инициируются открытием соответствующих закладок в левой части окна. Например, для объекта Запросы можно создать запрос к базе данных в режиме дизайна (определив фильтры для выбора записей), в режиме мастера (более сложный вариант) и в режиме SQL-запроса (самый универсальный вариант, требующий знания языка SQL).
Команды отдаются через главное меню, через кнопки на панели инструментов или в окнах, через контекстное меню (по правой кнопке мыши). Набор активных команд, как правило, носит контекстный характер, т. е. зависит от текущего режима работы. Наиболее важные команды вынесены на панель инструментов.
Задание 1
1. Запустить на исполнение LibreOffice Base.
2. Открыть базу данных «Компьютерная школа» (путь и файл, в котором хранится БД, будут указаны учителем).
3. Установить режим работы с таблицей (вкладка Таблицы). Открыть таблицу «Ученик»: команда Открыть. Изучить содержимое таблицы.
4. Закрыть таблицу. Перейти в режим работы со структурой таблицы: команда меню Правка -> Изменить.
5. Последовательно перемещаясь от поля к полю, познакомиться со свойствами полей: типами, форматами, длиной.
6. Закрыть конструктор.
Задание 2
1. Перейти в режим работы с формами (вкладка Формы).
2. Открыть форму «Ученик».
3. Через открывшуюся форму просмотреть последовательность записей. Выполнить переход на первую и последнюю записи, на запись с номером 5, на запись с номером 10.
4. Добавить в конец таблицы еще одну запись о новом ученике: 21, Валеев, Александр, 2, Б, 6, 8.
5. Закрыть форму, сохранив введенную информацию.
Задание 3
Выполнить действия на сортировку записей в полной таблице.
1. Отсортировать таблицу по фамилиям учеников в алфавитном порядке (ключ сортировки — поле «Фамилия»). Для этого:
=> выделить столбец «Фамилия» (щелкнуть по заголовку);
=> с помощью кнопки на панели инструментов выполнить сортировку.
2. Отсортировать таблицу по двум ключам: «Школа» и «Фамилия» в порядке возрастания. Для этого:
=> нажать кнопку на панели инструментов;
=> в появившемся диалоговом окне выбрать первое поле «Школа» с порядком сортировки по возрастанию, а затем — поле «Фамилия» с порядком сортировки по возрастанию.
Обратите внимание на результат: записи с одинаковым значением поля «Школа» расположились в порядке возрастания поля «Фамилия». Здесь «Школа»называется первичным, а «Фамилия» — вторичным ключом сортировки.
Задание 4
Выполнить действия, связанные с отбором записей из таблицы с помощью фильтра.
1. Открыть таблицу «Ученик».
2. С помощью фильтра отобрать всех учеников из школы 44.
=> выбрать кнопку ;
=> в появившемся диалоговом окне выбрать имя поля «Школа», условие = (равно), значение 44 и нажать кнопку ОК.
3. Удалить фильтр с помощью кнопки .
4. Аналогично заданию 2 выбрать всех учеников — восьмиклассников.
Приложение
База данных «Компьютерная школа»