скачать МИНИСТЕРСТВО ОБРАЗОВАНИЯ МОСКОВСКОЙ ОБЛАСТИ Московский государственный областной университет Кафедра вычислительной математики и методики преподавания информатики Системы управления базами данныхУчебно-методический комплекспо специальностям 050202.65 и 050200.62 - «Информатика» Москва 2008 МИНИСТЕРСТВО ОБРАЗОВАНИЯ МОСКОВСКОЙ ОБЛАСТИ Московский государственный областной университет Кафедра вычислительной математики и методики преподавания информатики УТВЕРЖДАЮ: Заведующий кафедрой _________ проф. Антипов И.Н. «___»______________200 г. ^ Учебно-методический комплекс по специальностям 050202.65 и 050200.62 - «Информатика» Составитель: старший преподаватель кафедры ВМ и МПИ Кузнецов В.С. Москва 2008 УДК 681.3 Печатается по решению ученого совета физико-математического факультета и редакционного совета МГОУ Системы управления базами данных. Учебно-методический комплекс по специальностям 050202.65, 050200.62 - «Информатика». Составитель – Кузнецов В.С. - М.: МГОУ, 2008. – 23 с. В учебно-методическом комплексе по дисциплине «Системы управления базами данных» приведены требования к дисциплине, программа дисциплины, тематика всех видов занятий, рекомендуемая литература и методические указания по организации проведения занятий. Учебно-методический комплекс предназначен для студентов физико-математического факультета, обучающихся по специальности «Информатика». © Московский государственный областной университет, 2008 ©Издательство МГОУ «Народный учитель, 2008 © Кузнецов В.С. СОДЕРЖАНИЕ
ВВЕДЕНИЕВ любой профессиональной области деятельности человеку приходится решать задачи хранения и обработки информации. На сегодняшний момент обработка информации немыслима без использования средств вычислительной техники. Цель данного курса - дать представление о технологиях хранения и обработки информации с использованием систем управления базами данных. Дисциплина «Системы управления базами данных» входит в раздел дисциплин специализации и для специальностей 050201.65 и 050200.62 «Информатика». По данной дисциплине в образовательном стандарте отсутствуют требования к обязательному минимуму содержания дисциплины. В связи с этим, разработка учебно-методического комплекса была основана на требованиях к обязательному минимуму содержания по дисциплине «Информационные системы». Специальность: информатика. Квалификация: учитель информатики. Дата утверждения: 31 января 2005 г. (Номер государственной регистрации № 661 пед/сп (новый)). Курс представляет собой систематическое введение в системы управления базами данных. В курсе изучаются модели данных, особое внимание уделяется реляционной модели данных, как основной модели используемой в современных СУБД. Изучается язык SQL - как основа работы с реляционными базами данных. Разрабатывается приложение по работе с базой данных. При изучении данной дисциплины делается акцент на практические занятия - лабораторные работы и семинары, - которые составляют 60% времени, отводимого на аудиторные занятия. Немалая роль отводится и самостоятельной работе студентов (50% времени, отводимого на весь курс). 1. Требования к обязательному минимуму содержания дисциплины Специальность: информатика. Квалификация: учитель информатики. Дата утверждения: 31 января 2005 г. (Номер государственной регистрации № 661 пед/сп (новый)). Информационные модели данных: фактографические, реляционные, иерархические, сетевые. Последовательность создания информационной модели. Взаимосвязи в модели. Типы моделей данных. Проектирование баз данных. Концептуальная модель предметной области. Логическая модель предметной области. Определение взаимосвязи между элементами баз данных. Первичные и альтернативные ключи атрибутов данных. Приведение модели к требуемому уровню нормальной формы. Физическое описание модели. Словарь данных. Администрирование баз данных. Обзор возможностей и особенностей различных СБД. Методы хранения и доступа к данным. Работа с внешними данными с помощью технологии ODBC (BDE). Объектно-ориентированное программирование в среде баз данных. Введение в SQL. Использование SQL для выборки данных из таблицы, создание SQL- запросов. SQL сервер. Использование технологии «клиент-сервер». Разработка пользовательских программ в среде баз данных. Требования к знаниям и умениям. В результате изучения дисциплины студенты должны: уметь формулировать и решать конкретные задачи в области управления данными и выбирать программные системы и технологии для решения этих задач на имеющихся аппаратно-программных платформах; владеть методологией проектирования информационных систем; иметь представления о современных промышленных системах управления базами данных; владеть операторами языка SQL по работе в реляционных базах данных; уметь написать приложение, работающее с локальной базой данных. Объем и сроки изучения курса. Изучение курса предполагается в течение одного семестра после изучения студентами курса «программирование». На освоение курса выделяется 36 часов на лекционные занятия, 18 часов на семинарские занятия и 36 часов на лабораторные работы. 90 часов отводится на самостоятельную работу студентов по подготовленным преподавателем заданиям для самостоятельной работы. Виды контроля знаний студентов и их отчетности. В течение всего курса проводится текущий контроль в виде контрольных работ (тестов) - 4 контрольных работы. По окончании курса проводится итоговый контроль в форме зачета. Текущий контроль выполняется на лабораторных занятиях. Контроль заключается в проверке знаний студента по пройденной теме и готовности выполнить небольшое практическое задание. На зачетном занятии студент должен ответить не менее чем на два контрольных вопроса по любой из запланированных и выполненных лабораторных работ и на один теоретический вопрос. Зачет проводится в устной форме. Для обеспечения учебного процесса по данному курсу необходимо иметь следующее материально-техническое и программное обеспечение: лекционный зал, снабженный компьютером и мультимедийным оборудованием для презентаций; рабочие станции слушателей и преподавателей, 12 персональных компьютеров, в одном классе объединенных в локальную компьютерную сеть; мультимедийный проектор; принтер. Программное обеспечение дисциплины: операционная система Windows 2000 SP4 или Windows XP SP2 с развернутым веб-сервером MS IIS. дистрибутив системы управления базами данных Microsoft SQL Server 2000, доступный пользователям рабочих станций локально или по сети; офисный пакет программ MS Office в составе : Word, Excel, Power Point, Access; среда разработки Visual Studio.NET 2003/2005, в состав которой входит Visual Basic и/или C#; программа для чтения документов формата portable document format (pdf); интернет-браузер Microsoft Internet Explorer. ^ 2.1. содержание дисциплины Тема 1. Основы баз данных: введение. Данные и информация. Неупорядоченные и структурированные данные. Разделение данных и их интерпретации. Хранение данных: системы файлов и специальные хранилища - базы данных. База данных. Система управления базами данных как специальное программное обеспечение для управления базами данных. Система базы данных и ее компоненты: данные, СУБД, оборудование, персонал, процедуры. Информационная система. Требования к базе данных. Классификации баз данных по форме представления информации, по типу хранимой информации, по характеру организации хранения. Тема 2. Модели баз данных. Моделирование данных. Основы моделирования. Модели данных: уровни абстракции данных. Модифицированные (ANSI/SPARC) абстрактные модели данных. Концептуальная модель. Внутренняя модель. Внешняя модель. Физическая модель. Модель базы данных как совокупность логических конструкций, используемых для представления структуры данных и отношений между ними внутри базы данных. Категории моделей баз данных: концептуальная (понятийная) модель и модель реализации. Модели «сущность-связь» (ER-модель) и объектно-ориентированная модель как типы концептуальной модели. Модели реализации: иерархическая, сетевая, реляционная и объектно-ориентированная. Концептуальная модель как основа при проектировании базы данных. Типы связей для описания отношений между данными: один-ко-многим (1:М), многие-ко-многим (M:N) и один-к-одному (1:1). Обзор моделей баз данных: иерархическая модель. Пример иерархической структуры. Преимущества и недостатки иерархической модели. Сетевая модель. Пример сетевой модели. Преимущества и недостатки сетевой модели. Модель «сущность-связь» (ER-модель). Модель «сущность-связь» как графический инструмент моделирования данных. Диаграммы «сущность-связь». Разновидности ER-диаграмм (модели): Чена, «птичья лапка», Rein85, IDEF1X. CASE средства ER-моделирования. Разработка ER-диаграмм. Реляционная модель. Основные понятия. Сущности, атрибуты, таблицы. Объектно-ориентированная модель. Основные понятия. Эволюция моделей данных. Тема 3. Реляционная модель баз данных Основные понятия. Сущности и атрибуты. Набор сущностей. Таблицы и их свойства. Поля и записи в таблице. Ограничения на имена таблиц и столбцов. Отображение модели «сущность-связь» на реляционную модель. Типы данных: числовой, символьный, дата/время, логический. Ключевые атрибуты. Первичный ключ (PK). Составные ключи. Функциональные зависимости атрибутов. Полная функциональная зависимость. Суперключ. Потенциальный ключ (CS). Вторичный ключ (SK). Внешний ключ (FK). Индексы. Ограничения целостности данных в реляционных базах данных: целостность на уровне сущности, целостность на уровне ссылки, целостность, определяемая пользователем. Правила целостности. Словарь данных. Реализация связей в реляционной базе данных. Реализация связей «один к одному», «один ко многим», «многие ко многим». Тема 4. Нормализация таблиц РБД Необходимость нормализации. Избыточность данных. Избыточность данных как причина аномалий данных. Аномалии обновления. Аномалии включения. Аномалии удаления. Этапы нормализации. Нормальные формы. 1НФ, 2НФ, 3НФ. Приведение к первой нормальной форме (1НФ). Зависимости между атрибутами. Частичная зависимость. Транзитивная зависимость. Диаграмма зависимостей: 1НФ. Приведение ко второй нормальной форме (2НФ). Приведение к третьей нормальной форме (3НФ). Нормальная форма Бойса-Кодда (БКНФ). Детерминант. Структура таблицы, приведенной к 3НФ, но не к БКНФ. Декомпозиция структуры таблицы для приведения к требованиям БКНФ. Нормальный формы более высокого уровня. Денормализация. Тема 5. Язык структурированных запросов Общее понятие языков запросов. Язык структурированных запросов (SQL) как стандартный язык реляционных баз данных. Введение в SQL. Назначение. Основные понятия. Типы данных. Таблицы. Запросы. Компоненты языка SQL: язык определения данных и язык манипулирования данными. Стандарты и диалекты языка SQL: ANSI/ISO SQL, SQL-99(SQL-3), Transact-SQL. Команды языка определения данных (DDL). Команды языка манипулирования данными (DML). Использование языка SQL для выборки данных из таблиц. Формирования запроса. Определение выборки - предложение WHERE. Использование булевых операторов. Использование специальных операторов в «условиях». Оператор IN. Оператор BETWEEN. Оператор LIKE. Оператор IS NULL. Функции агрегирования. Суммирование данных с помощью функций агрегирования. Строки и выражения. Форматирование результатов запросов. Упорядочение выходных полей. Использование множества таблиц в одном запросе. Соединение таблиц. Вложенные запросы. Связанные подзапросы. Использование оператора EXIST. Использование операторов ANY, ALL и SOME. Использование предложения UNION. Объединение множества запросов в один. Ввод, удаление и изменение значений полей. Команды обновления. Ввод значений. Исключение строк из таблицы. Изменение значений полей. Использование подзапросов с командами обновления. Использование подзапросов в INSERT. Использование подзапросов с DELETE. Использование подзапросов с UPDATE. Создание таблиц. Команда CREATE TABLE. Индексы. Изменение таблицы, которая уже была создана. Ограничения на множество допустимых значений данных. Ограничения в таблицах. Поддержка целостности данных. Родительские ключи. Представления. Команда CREATE VIEW. Изменение значений с помощью представлений. Обновление представлений. Выбор значений, размещенных в представлениях. Понятие администрирования СУБД. Использование языка SQL для решения административных задач по управлению правами доступа к данным. Пользователи. Права и Привилегии. Передача и лишение привилегий. Работа с множеством пользователей. Управление безопасностью в СУБД. Обзор современных систем управления базами данных. Microsoft SQL Server. Тема 6. Разработка программного обеспечения по работе с базами данных Методология проектирования программного обеспечения. Основные технологии по работе с локальными базами данных. Работа с внешними данными с помощью BDE/ODBC/MS DBJet Объектно-ориентированное программирование в среде баз данных. DAO – data access object Доступ к внешним данным с помощью распределенных запросов. Клиент/серверная сетевая инфраструктура и работа с удаленными базами данных. ^
^
Примечание: В скобочках указано время предусмотренное для профиля 050200.62 - «Информатика». ^
Сводная таблица бюджета времени
Примечание: В скобочках указано время предусмотренное для профиля 050200.62 - «Информатика». 2.4. Список рекомендуемой литературы 2.4.1. Основная литература
2.4.2. Дополнительная литература
2.4.3. Перечень ключевых слов 1НФ, 2НФ, 3НФ ^ BDE CASE средства ER-моделирования CREATE TABLE CREATE VIEW DAO DDL DELETE DML ER-диаграмма ER-модель INSERT Microsoft SQL Server ODBC SQL SQL-3 SQL-99 Transact-SQL. UPDATE Абстрактные модели данных Администрирование СУБД Аномалии данных Атрибуты База данных Вложенные запросы Внешний ключ (FK) Внешняя модель Внутренняя модель Вторичный ключ (SK) Данные Денормализация Детерминант Диаграммы «сущность-связь» Записи в таблице Запросы Иерархическая модель Избыточность данных Индексы Информационная система Информация Категории моделей баз данных Клиент/серверная сетевая инфраструктура Ключевые атрибуты Концептуальная модель Методология проектирования программного обеспечения Модели данных Модели реализации Моделирование данных Модель «птичья лапка» Модель «сущность-связь» Модель реализации Модель Чена Неупорядоченные данные Нормализация Нормальная форма Бойса-Кодда (БКНФ) Нормальные формы Объединение множества запросов в один Объектно-ориентированная модель Ограничения целостности данных в реляционных базах данных Первичный ключ (PK) Полная функциональная зависимость Пользователь Поля таблицы Понятийная модель Потенциальный ключ (CS) Права Права доступа к данным Правила целостности Представления Привилегии Реляционная модель Связанные подзапросы Связь многие-ко-многим (M:N) Связь один-к-одному (1:1) Связь один-ко-многим (1:М) Сетевая модель Система управления базами данных Словарь данных Соединение таблиц Составной ключ Суперключ Сущность Таблицы Типы данных Транзитивная зависимость Упорядоченные данные Управление безопасностью в СУБД Уровни абстракции данных Физическая модель Функции агрегирования Функциональные зависимости атрибутов Целостность на уровне ссылки Целостность на уровне сущности Целостность, определяемая пользователем Частичная зависимость Этапы нормализации Язык запросов Язык структурированных запросов ^ Специфика дисциплины «Системы управления базами данных» ориентирует студентов на активную самостоятельную работу:
^ В данном разделе приведены примерные темы курсовых работ. Естественно, темы курсовых работ должны постоянно обновляться с тем, чтобы учесть быстрые изменения в информационных науках. 1. Разработка базы данных «Школа». 2. Разработка базы данных «Учебный план». 3. Разработка базы данных «Склад». 4. Разработка базы данных «Магазин». 5. Методика изучения баз данных на уроках информатики в средней школе. ^ СПИСОК ВОПРОСОВ 5.1. Требования к зачету Для сдачи зачета по дисциплине «Системы управления базами данных» необходимо выполнить все требуемые практические задания (получить допуск к зачету преподавателя, проводившего семинарские или лабораторные занятия). Существенным моментом является посещаемость занятий (в случае пропусков занятий предполагается более подробный опрос по темам пропущенных занятий). На зачет выносится материал, излагаемый в лекционном курсе и рассматриваемый на семинарских и на лабораторных занятиях. Для получения зачета надо правильно ответить на несколько поставленных вопросов и решить предложенные несложные задачи. В затруднительных ситуациях (в отдельных случаях) допускается на зачете воспользоваться тетрадью с записью материалов лекций и семинаров в присутствии преподавателя. При этом преподаватель может убедиться, в какой степени студент ориентируется в «своих» материалах и по ряду дополнительных вопросов (по тетради) решить вопрос о зачете. 5.2. Список вопросов к зачету 1. Моделирование данных. Основы моделирования. Модели данных: уровни абстракции данных. 2. Модифицированные (ANSI/SPARC) абстрактные модели данных. Концептуальная модель. Внутренняя модель. Внешняя модель. Физическая модель. 3. Модель базы данных как совокупность логических конструкций, используемых для представления структуры данных и отношений между ними внутри базы данных. 4. Модели реализации: иерархическая, сетевая, реляционная и объектно-ориентированная. Концептуальная модель как основа при проектировании базы данных. 5. Типы связей для описания отношений между данными: один-ко-многим (1:М), многие-ко-многим (M:N) и один-к-одному (1:1). Иерархическая модель. Пример иерархической структуры. Преимущества и недостатки иерархической модели. 6. Сетевая модель. Пример сетевой модели. Преимущества и недостатки сетевой модели. 7. Модель «сущность-связь» (ER-модель). Модель «сущность-связь» как графический инструмент моделирования данных. Диаграммы «сущность-связь». 8. Реляционная модель. Основные понятия. Сущности, атрибуты, таблицы. Объектно-ориентированная модель. Основные понятия. Эволюция моделей данных. 9. Отображение модели «сущность-связь» на реляционную модель. Типы данных: числовой, символьный, дата/время, логический. 10. Ключевые атрибуты. Первичный ключ (PK). Составные ключи. Функциональные зависимости атрибутов. Полная функциональная зависимость. 11. Суперключ. Потенциальный ключ (CS). Вторичный ключ (SK). Внешний ключ (FK). Индексы. 12. Ограничения целостности данных в реляционных базах данных: целостность на уровне сущности, целостность на уровне ссылки, целостность, определяемая пользователем. Правила целостности. 13. Реализация связей в реляционной базе данных. Реализация связей «один к одному», «один ко многим», «многие ко многим». 14. Нормализация таблиц РБД. Необходимость нормализации. Избыточность данных. Избыточность данных как причина аномалий данных. Аномалии обновления. Аномалии включения. Аномалии удаления. 15. Этапы нормализации. Нормальные формы. 1НФ, 2НФ, 3НФ. Приведение к первой нормальной форме (1НФ). 16. Зависимости между атрибутами. Частичная зависимость. Транзитивная зависимость. Диаграмма зависимостей: 1НФ. Приведение ко второй нормальной форме (2НФ). Приведение к третьей нормальной форме (3НФ). 17. Нормальная форма Бойса-Кодда (БКНФ). Детерминант. Структура таблицы, приведенной к 3НФ, но не к БКНФ. Декомпозиция структуры таблицы для приведения к требованиям БКНФ. 18. Язык структурированных запросов. Общее понятие языков запросов. Язык структурированных запросов (SQL) как стандартный язык реляционных баз данных. 19. Введение в SQL. Назначение. Основные понятия. Типы данных. Таблицы. Запросы. Компоненты языка SQL: язык определения данных и язык манипулирования данными. Стандарты и диалекты языка SQL: ANSI/ISO SQL, SQL-99(SQL-3), Transact-SQL. 20. Команды языка определения данных (DDL). Команды языка манипулирования данными (DML). 21. Использование языка SQL для выборки данных из таблиц. Формирования запроса. Определение выборки - предложение WHERE. 22. Использование булевых операторов. Использование специальных операторов в «условиях». Оператор IN. Оператор BETWEEN. Оператор LIKE. Оператор IS NULL. Функции агрегирования. Суммирование данных с помощью функций агрегирования. 23. Строки и выражения. Форматирование результатов запросов. Упорядочение выходных полей. Использование множества таблиц в одном запросе. Соединение таблиц. 24. Вложенные запросы. Связанные подзапросы. Использование оператора EXIST. Использование операторов ANY, ALL и SOME. Использование предложения UNION. Объединение множества запросов в один. 25. Ввод, удаление и изменение значений полей. Команды обновления. Ввод значений. Исключение строк из таблицы. Изменение значений полей. Использование подзапросов с командами обновления. Использование подзапросов в INSERT. Использование подзапросов с DELETE. Использование подзапросов с UPDATE. 26. Создание таблиц. Команда CREATE TABLE. Индексы. Изменение таблицы, которая уже была создана. Ограничения на множество допустимых значений данных. Ограничения в таблицах. Поддержка целостности данных. Родительские ключи. 27. Представления. Команда CREATE VIEW. Изменение значений с помощью представлений. Обновление представлений. Выбор значений, размещенных в представлениях. 28. Понятие администрирования СУБД. Использование языка SQL для решения административных задач по управлению правами доступа к данным. Пользователи. Права и Привилегии. Передача и лишение привилегий. Работа с множеством пользователей. 29. Управление безопасностью в СУБД. Обзор современных систем управления базами данных. Microsoft SQL Server. 30. Методология проектирования программного обеспечения. 31. Основные технологии по работе с локальными базами данных. 32. Работа с внешними данными с помощью BDE/ODBC/MS DBJet. 33. Объектно-ориентированное программирование в среде баз данных. DAO – data access object 34. Доступ к внешним данным с помощью распределенных запросов. 35. Клиент/серверная сетевая инфраструктура и работа с удаленными базами данных. ^ 6.1. Методические рекомендации к семинарским занятиям и лабораторным работам Для эффективного овладения математической логикой рекомендуется: - освоить фундаментальные понятия дисциплины; - овладеть элементарными приемами составления программ; - усвоить язык физики моделирования; - получить практические навыки в выводе формул; - регулярно прорабатывать изученный материал; 6.2. Методические рекомендации по осуществлению текущего, самостоятельного и итогового контроля Текущий контроль следует осуществлять по направлениям: посещаемость занятий; выполнение текущих заданий. Самоконтроль студенты могут проводить по результатам решения задач, по результатам пробных попыток самостоятельной разработки несложных задач моделирования отдельных процессов. При этом крайне целесообразно вести краткий конспект, а также дополнять основной конспект сведениями, полученными и усвоенными в результате самостоятельной работы. Итоговый контроль проводится с помощью отчетов по выполненным заданиям, зачетам и экзаменам. 6.3. Методические рекомендации по организации самостоятельной работы студентов Виды самостоятельной работы студентов по информатике отмечены в разделе (3) настоящего УМК. Самостоятельную работу студентов можно также организовать за счет выбора студентом индивидуального задания. На семинарских занятиях - самостоятельное решение поставленных задач. На лекциях - дискуссия, обсуждение мнений студентов. На экзамене - проверка ознакомления студентов с литературой. ^
Примечание: В скобочках указано время предусмотренное для профиля 050200.62 - «Информатика». ^ 7.1. Методические рекомендации по организации изучения дисциплины Дисциплина изучается в 5 семестре. Для информатиков профиля 050202.65 предусмотрено 36 час лекций, 18 час семинарских занятий, 36 час лабораторных занятий и 90 час самостоятельных занятий. Для информатиков профиля 050200.62 предусмотрено 36 час лекций, 36 час семинарских занятий, 36 час лабораторных занятий и 92 час самостоятельных занятий. В конце запланировано проведение зачета. Это позволяет осуществить единый унифицированный подход к изложению теоретической части дисциплины, но требует учета специфики специальностей при проведении лабораторных и практических занятий, что отражено в примечаниях к тематическим планам. 7.2. Образцы практических заданий 1. Разработать базу данных «Школа». 2. Разработать базу данных «Учебный план». 3. Разработать базу данных «Склад». 4. Разработать базу данных «Магазин». 5. Разработать таблицу запросов. 6. Разработать отчет. 7. Разработать модель иерархической базы данных. 8. Привести таблицу базы данных к нормализованному виду. ^ ПРОГРАММЫ УЧЕБНОЙ ДИСЦИПЛИНЫ 8.1. Программы, пособия, литература (в т.ч. в библиотеке МГОУ) Библиотека МГОУ обеспечивает дисциплину «Системы управления базами данных» в полном объеме. В ней имеется следующая литература.
8.2. Технические средства обучения На факультете средства вычислительной техники имеются в достаточном количестве: 4 компьютерных класса с современными персональными компьютерами. Классы имеют: мультимедийный проектор; принтер. Программное обеспечение дисциплины: операционная система Windows 2000 SP4 или Windows XP SP2 с развернутым веб-сервером MS IIS. дистрибутив системы управления базами данных Microsoft SQL Server 2000, доступный пользователям рабочих станций локально или по сети; офисный пакет программ MS Office в составе : Word, Excel, Power Point, Access; среда разработки Visual Studio.NET 2003/2005, в состав которой входит Visual Basic и/или C#; программа для чтения документов формата portable document format (pdf); интернет-браузер Microsoft Internet Explorer.
|