- •Базы данных
- •Введение
- •Часть 1. Проектирование баз данных
- •1.1. Некоторые понятия и определения
- •1. 2. Модели данных
- •1.2.1. Иерархическая модель данных
- •1.2.2. Сетевая модель данных
- •1.2.3. Реляционная модель данных Основные определения
- •Типы связей между отношениями
- •1.3. Классификация баз данных
- •1.4. Цели проектирования баз данных
- •1.5. Проектирование баз данных с использованием универсального отношения
- •1.5.1. Универсальное отношение
- •1.5.2. Проблемы, вызываемые использованием универсального отношения
- •Проблема вставки
- •Проблемы обновления
- •Проблемы удаления
- •1.5.3. Нормальная форма Бойса -Кодда
- •Функциональные зависимости
- •Возможный ключ и детерминант
- •Общий подход к декомпозиции
- •Анализ исходных аномалий
- •1.5.4. Возможные потери фз при декомпозиции
- •1.5.5. Избыточные функциональные зависимости
- •Приемы удаления избыточных фз
- •Минимальное покрытие
- •Модернизированный алгоритм проектирования бд
- •1.5. Метод er - проектирования
- •1.5.1. Сущности и связи
- •1.5.2. Степень связи
- •1.5.3. Переход от диаграмм er – типа к отношениям
- •Предварительные отношения для бинарных связей степени 1:1
- •Предварительные отношения для бинарных связей степени 1:n.
- •Предварительные отношения для бинарных связей степени n:m
- •1.5.4. Дополнительные конструкции, используемые в er - методе
- •Необходимость связей более высокого порядка
- •Предварительные отношения для трехсторонних связей
- •Использование ролей
- •1.5.5. Последовательность проектирования бд при использовании er- метода
- •1.5.5. Проверка отношений на завершающейся фазе проектирования
- •1.7. Другие нормальные формы
- •Часть 2. Специальные аспекты работы с базами данных
- •2.1. Защита данных в базе
- •2.2.1. Общие вопросы защиты данных
- •2.2.2. Реализация защиты данных в различных системах
- •Управление доступом в sql
- •Реализация системы защиты в ms sql Server
- •2.2. Обеспечение целостности данных
- •2.3. Организация параллельных процессов обработки данных
- •2.4. Восстановление бд
- •2.4.1. Уровни восстановления.
- •2.4.2. Восстановление и логический элемент работы
- •Требования к лэр
- •2.4.3. Промежуточное восстановление
- •2.4.4. Длительное восстановление
- •2.5. Математический аппарат, используемый при работе с реляционной базой данных
- •2.5.1. Теоретико-множественные операции реляционной алгебры
- •2.5.2. Специальные операции реляционной алгебры
- •Часть 3. Разработка приложений для работы с базами данных
- •3.1. Краткий обзор субд
- •3.2. Субд Access
- •3.2.1. Вводные замечания
- •3.2.2. Создание базы данных
- •3.2.3. Создание и работа с таблицами
- •3.2.4. Работа с запросами
- •3.2.5. Создание форм
- •3.2.5. Отчеты в Access
- •3.2.7. Макросы в Access
- •Преобразование макросов в программы на Visual Basic
- •3.2.8. Работа с внешними данными
- •3.3. Программирование в Access
- •3.3.1. Вводные замечания
- •3.3.2. Объявление переменных
- •3.3.3. Константы
- •3.3.4. Тип данных Variant
- •3.3.5. Пользовательские типы данных
- •3.3.5.Операторы, команды и выражения в vba
- •3.3.7. Процедуры vba
- •3.3.8. Управляющие структуры в vba
- •Работа с управляющими структурами
- •3.3.9. Объекты в Access
- •3.3.10. Классы в Access
- •3.3.11. Работа с ошибками в vba
- •3.4.Работа в ms sql –Server
- •3.4.1. Основные количественные показатели системы sql-сервер
- •3.4.2. Создание баз данных
- •3.4.3. Создание таблицы
- •3.4.4. Извлечение данных
- •3.4.5. Добавление данных
- •3.4.5. Изменение данных
- •3.4.7. Удаление данных
- •Цитированная литература
- •Оглавление
- •Часть 1. Проектирование баз данных 3
- •Часть 2. Специальные аспекты работы с базами данных 70
- •Часть 3. Разработка приложений для работы с базами данных 113
Министерство образования Российской Федерации
Камский государственный политехнический институт
Ахмадеев И.А., Хайруллин А.Х., Юрасов С.Ю.
Базы данных
Допущено Учебно-методическим объединением вузов по образованию в области автоматизированного машиностроения (УМО АМ) в качестве учебного пособия для студентов высших учебных заведений, обучающихся по направлениям подготовки бакалавров и магистров «Технология, оборудование и автоматизация машиностроительных производств», дипломированных специалистов «Конструкторско-технологическое обеспечение машиностроительных производств», «Автоматизированные технологии и производства»
г. Набережные Челны
2004
УДК 681.3.016 (075)
Ахмадеев И.А., Хайруллин А.Х., Юрасов С.Ю. Базы данных. Учебное пособие. Под общей редакцией профессора Ахмадеева И.А. по дисциплине «Базы данных» для студентов специальности 2102 «Автоматизация производственных процессов и производств». Набережные Челны: Камский государственный политехнический институт, 2004, - 239 с.
Учебное пособие посвящено вопросам проектирования баз данных, специальным вопросам при работе с базами данных, а также реализации программного обеспечения для работы с базами данных с использованием СУБД Access, языка программирования Visual Basic for Application (VBA) и системы SQL Server.
Илл. -36, Таб. – 15, Лит. – 14 наименований.
Рецензент: кандидат технических наук, доцент
Гумеров А.Ф.
Печатается по решению научно – методического совета Камского государственного политехнического института.
ISBN5-272—00278-4 Камский государственный
политехнический институт, 2004 год
Введение
Одна из причин применения средств вычислительной техники во многих сферах человеческой деятельности (науке, экономике, управлении, технике, технологии и др.) связана с резким ростом объемов перерабатываемой информации. Информация, данные все чаще рассматриваются как жизненно важные национальные ресурсы, которые должны быть организованы так, чтобы ценность их была, по возможности, максимальной. Базам данных посвящен целый ряд литературных источников, изданных в разное время. Однако литературы, посвященной проектирования реляционных баз данных, явно недостаточно, хотя вопросы проектирования таких баз данных при построении различных информационных систем, выполнении курсовых и дипломных проектов являются весьма актуальными. Данное учебное пособие состоит из трех частей.
Первая часть посвящена проектированию реляционных баз данных с использованием декомпозиционного и ER – методов.
Во второй части рассмотрены вопросы поддержки целостности, защиты информации, параллельной обработки данных, математический аппарат, используемый при работе с реляционными базами данных.
Третья часть посвящена разработке приложений для работы с базами данных с использованием СУБД Access, языка VBA и системы Microsoft SQL – сервер.
Часть 1. Проектирование баз данных
1.1. Некоторые понятия и определения
База данных (БД) — именованная совокупность данных, отражающая состояние объектов и их отношений в рассматриваемой предметной области.
Система управления базами данных (СУБД) — совокупность языковых и программных средств, предназначенных для создания, ведения и совместного использования БД многими пользователями.
Программы, с помощью которых пользователи работают с базой данных, называются приложениями. В общем случае с одной базой данных могут работать множество различных приложений. Например, если база данных моделирует некоторое предприятие, то для работы с ней может быть создано приложение, которое обслуживает подсистему учета кадров, другое приложение может быть посвящено работе подсистемы расчета заработной платы сотрудников, третье приложение работает как подсистема складского учета, четвертое приложение посвящено планированию производственного процесса и т. д. При рассмотрении приложений, работающих с одной базой данных, предполагается, что они могут работать параллельно и независимо друг от друга, и именно СУБД призвана обеспечить работу множества приложений с единой базой данных таким образом, чтобы каждое из них выполнялось корректно, но учитывало все изменения в базе данных, вносимые другими приложениями.
Одним из основополагающих в концепции баз данных являются обобщенные категории данные и модель данных.
Понятие данные в концепции баз данных – это набор конкретных значений, параметров, характеризующих объект, условие, ситуацию или любые другие факторы. Примеры данных: Иванов Иван Иванович, 100 рублей и т. д. Данные не обладают определенной структурой, данные становятся информацией тогда, когда пользователь задает им определенную структуру, т. е. осознает их смысловое содержание. Например, если мы выпишем столбиком набор чисел: 534322, 523498, 453478, 796475 и т.д., то это данные, но не информация. Если теперь против каждого набора мы запишем название организации, эти данные превратятся в информацию, которую можно использовать. Таким образом, информация – это используемые данные.