Телефон: 8-800-350-22-65
WhatsApp: 8-800-350-22-65
Telegram: sibac
Прием заявок круглосуточно
График работы офиса: с 9.00 до 18.00 Нск (5.00 - 14.00 Мск)

Статья опубликована в рамках: XL Международной научно-практической конференции «Вопросы технических и физико-математических наук в свете современных исследований» (Россия, г. Новосибирск, 23 июня 2021 г.)

Наука: Технические науки

Секция: Информатика, вычислительная техника и управление

Скачать книгу(-и): Сборник статей конференции

Библиографическое описание:
Зацепин М.Н. ПРЕПОДАВАНИЕ БАЗ ДАННЫХ ДЛЯ СТУДЕНТОВ НЕТЕХНИЧЕСКИХ СПЕЦИАЛЬНОСТЕЙ // Вопросы технических и физико-математических наук в свете современных исследований: сб. ст. по матер. XL междунар. науч.-практ. конф. № 6(32). – Новосибирск: СибАК, 2021. – С. 22-27.
Проголосовать за статью
Дипломы участников
У данной статьи нет
дипломов

ПРЕПОДАВАНИЕ БАЗ ДАННЫХ ДЛЯ СТУДЕНТОВ НЕТЕХНИЧЕСКИХ СПЕЦИАЛЬНОСТЕЙ

Зацепин Михаил Николаевич

ст. преподаватель кафедры Математического моделирования, Кубанский государственный университет,

РФ, г. Краснодар

АННОТАЦИЯ

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

 

Ключевые слова: базы данных, СУБД, обучение, нетехнические специальности, курс обучения.

 

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

Началом должно быть знакомство с файловыми системами и разметкой носителей. Данные темы редко рассматриваются в школьных курсах в достаточной мере (чаще вообще не рассматриваются). Знакомство включает краткую историю, назначение, развитие, современное состояние, структуру и правила адресаций. Сравнительно рассматривается история развития баз данных, и сопоставляются возможности ФС и БД. В истории развития баз данных обязательно уделяется внимание иерархическому и сетевому типам, разбирается структура и акцентируется связь структур с файловыми системами и различия. Основное внимание уделяется реляционным базам данных, как наиболее распространенным. Вместе с тем обязательно рассматриваются постреляционные и объектно-ориентированные базы данных и излагаются причины их появления, в т.ч. в связи с Big Data, ИИ.

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

Основная часть начинается с понятия «модель данных», трехуровневой архитектуры ANSI и понятий «физическая независимость» и «логическая независимость». На этой базе дается классификация моделей – инфологические, даталогические, физические – приводятся примеры и показывается связь с архитектурой баз данных ANSI.

Далее вводятся основные понятия реляционной теории: отношения, атрибуты, домены, кортежи, схема отношения, переменная отношения, а так же основные операции: объединение, пересечение, разность, декартово произведение, ограничение (фильтрация), проекция, соединение, деление. Для иллюстрации всех понятий и операций используется представление в виде таблиц и диаграммы Эйлера-Венна. Приводятся примеры на таблицах. На этой основе объясняются понятия: отсутствие одинаковых кортежей и первичный ключ, независимость последовательности кортежей и атрибутов, атомарность значений атрибутов. Акцентируется внимание на важности понятия «первичный ключ», описываются свойства (минимальность и т.д.), объясняются термины «простой ключ», «составной ключ», «альтернативный ключ».

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

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

Физическое проектирование начинается с рассказа об оснастке СУБД, в частности о наличии графических средств для работы с СУБД и командной строки. Далее вводится понятие о SQL и сопоставляется работа с графической оболочкой и командной строкой. Разъясняется создание базы данных, последовательность создания таблиц и ограничений, последовательность заполнения таблиц. Вводится понятие о целостности базы данных и о значении Null. Связываются понятия домена данных и типа и ограничений. [1]

Разбор возможностей SQL начинается со структуры языка и его возможностей. Возможно некоторое введение в историю. Первыми разбираются запросы на выборку. Приводятся и разбираются примеры простых запросов (только Select  <>  From). Далее вводится понятие фильтра Where и виды условий фильтрования: тета-сравнение, принадлежность диапазону, множеству, совпадение (несовпадение) с шаблоном, сравнение с NULL. Вводится ключевое слово Distinct. Объясняется порядок и использование Order by и приводятся примеры. Вводится понятие агрегатных функций. Приводятся примеры запросов с агрегатными функциями. Разъясняется необходимость группировки данных, механизм работы Group by, излагаются правила использования Group by. Приводятся примеры. Дополняется необходимость фильтрации вывода после группировки – объясняется порядок использования Having, сравнивается Having и Where. Вводится сортировка вывода, многоуровневая сортировка и порядок сортировки. Далее разъясняется необходимость сложных запросов, что это такое и приводятся примеры. Даются признаки необходимости сложного запроса. Вводится понятие соединения. Даются типы соединений с использованием диаграмм Эйлера-Венна (где применимо) и даются примеры.

Операторы DDL разъясняются на примере базы данных и таблицы. Create database вводится без размещения и журналов. Create table дается подробно – помимо описания полей даются три способа ввода ограничений: NULL, UNIQUE, DEFAULT, CHECK, CONSTRAINT, PRIMARY KEY, FOREIGN KEY, MATCH, ON DELETE, ON UPDATE. Подробно разъясняется применение всех ограничений. Даются примеры создания таблиц на основе запросов. Предложения Drop даются на примере базы данных и таблицы. Предложения Alter даются на примере таблицы с несколькими примерами добавления и удаления полей и ограничений. [2]

Операторы DML даются подробно (с упоминанием ограничений целостности) с достаточным количеством примеров. Для Insert into дается полный и сокращенный синтаксис.

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

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

Далее дается определение транзакции, разъясняется на примерах и сопоставляется с запросами SQL. Даются предложения SQL для управления транзакциями. Разъясняются требования ACID и уровни изоляции. Дается представление об уровнях изоляции транзакций по умолчанию и способы управления изоляцией.

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

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

В практической части работа начинается в среде MS Access или в аналогичной среде (производные от HSQLBD). Разбирается интерфейс, создается однотабличная база данных, несколько форм к ней (с различной целью), несколько простых запросов на выборку и несколько отчетов. Рассматривается работа с запросами в среде конструктора. Следующая база данных создается многотабличная. В ней создается схема базы данных, проводится импорт данных, создаются запросы на различные действия, сложные отчеты и формы, пробуется режим SQL. По результатам проводится проверочная работа, содержащая изученные элементы.

Следующий вид практической работы – создание ER-диаграмм. В качестве исходных данных берутся формулировки задания (наподобие ТЗ) и предлагается создать ER-диаграмму базы данных. Используется много заданий для последовательного приближения обучаемых к самостоятельному созданию диаграмм. После этого изучается нормализация отношений. Исходным заданием является список полей будущей базы данных (или таблица), и предлагается создать схему базы данных, которая бы соответствовала трем нормальным формам. Упражнение так же повторяется многократно до достижения самостоятельности в правильном создании схемы. По результатам занятий по проектированию проводится проверочная работа (или две), в которой обучаемые самостоятельно строят ER-диаграммы и схемы базы данных.

Последний вид практических работ состоит в отработке навыков написания SQL кода для различных задач. Для работы необходимо наличие локальной сети с доступным сервером SQL (MS, Oracle, Mysql, Mariadb и т.п.) и соответствующими клиентами с командной строкой. Альтернативой может быть программа с консольным окном и доступом к какому-нибудь файлу базы данных из этой программы (т.е. в консоли программы можно вводить SQL код для базы данных). В этом случае подойдут любые системы (исполняемый файл соответствует системе). Один блок работы посвящен выборке – база данных должна содержать таблицы и схему, к которым будут исполняться запросы. Второй блок начинается с создания таблиц базы данных (т.е., исходный файл базы данных не содержит таблиц), содержащих связи и ограничения. После этого таблицы заполняются при помощи DML, изменяются при помощи DML, можно удалить какие-то записи. Далее модифицируются сами таблицы и база: добавляются и удаляются поля и ограничения, таблицы. По итогам отработки навыков написания SQL кода проводится проверочная работа, содержащая составление запросов на бумаге.

По результатам курса проводится проверочная работа или тестирование.

 

Список литературы:

  1. Карпова, Т. С. Базы данных: модели, разработка, реализация / Т. С. Карпова. – 2-е изд., исправ. – Москва : Национальный Открытый Университет «ИНТУИТ», 2016. – 241 с. : ил. – Режим доступа: по подписке. – URL: https://biblioclub.ru/index.php?page=book&id=429003
  2. Кузнецов, С. Введение в модель данных SQL : учебное пособие : [16+] / С. Кузнецов. – 2-е изд., исправ. – Москва : Национальный Открытый Университет «ИНТУИТ», 2016. – 351 с. : илл. – (Основы информационных технологий). – Режим доступа: по подписке. – URL: https://biblioclub.ru/index.php?page=book&id=429087
Проголосовать за статью
Дипломы участников
У данной статьи нет
дипломов

Оставить комментарий

Форма обратной связи о взаимодействии с сайтом
CAPTCHA
Этот вопрос задается для того, чтобы выяснить, являетесь ли Вы человеком или представляете из себя автоматическую спам-рассылку.