Базы данных: конспект лекций

Базы данных: конспект лекций

Коллектив Авторов

Описание

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

<p>Базы данных: конспект лекций</p><p>Лекция № 1. Введение</p><p>1. Системы управления базами данных</p>

Системы управления базами данных (СУБД) – это специализированные программные продукты, позволяющие:

1) постоянно хранить сколь угодно большие (но не бесконечные) объемы данных;

2) извлекать и изменять эти хранящиеся данные в том или ином аспекте, используя при этом так называемые запросы;

3) создавать новые базы данных, т. е. описывать логические структуры данных и задавать их структуру, т. е. предоставляют интерфейс программирования;

4) обращаться к хранящимся данным со стороны нескольких пользователей одновременно (т. е. предоставляют доступ к механизму управления транзакциями).

Соответственно, базы данных – это наборы данных, находящиеся под контролем систем управления.

Сейчас системы управления базами данных являются наиболее сложными программными продуктами на рынке и составляют его основу. В дальнейшем предполагается вести разработки по сочетанию обычных систем управления базами данных с объектно-ориентированным программированием (ООП) и интернет-технологиями.

Изначально СУБД были основаны на иерархических и сетевых моделях данных, т. е. позволяли работать только с древовидными и графовыми структурами. В процессе развития в 1970 г. появились системы управления базами данных, предложенные Коддом (Codd), основанные на реляционной модели данных.

<p>2. Реляционные базы данных</p>

Термин «реляционный» произошел от английского слова «relation» – «отношение».

В самом общем математическом смысле (как можно помнить из классического курса алгебры множеств) отношение – это множество

R = {(x1, …, xn) | x1 A1,…,xnAn},

где A1, …, An множества, образующие декартово произведение. Таким образом, отношение R это подмножество декартова произведения множеств: A1 x x An :

RA1 x x An.

Например, рассмотрим бинарные отношения строгого порядка «больше» и «меньше» на множестве упорядоченных пар чисел A1 = A2 = {3, 4, 5}:

R> = {(3, 4), (4, 5), (3, 5)} A1 x A2;

R< = {(5, 4), (4, 3), (5, 3)} A1 x A2.

Эти же отношения можно представить в виде таблиц.

Отношение «больше» R>:

Отношение «меньше» R<:

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

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

Итак, формы представления данных в реляционных БД могут быть разными. В чем проявляется эта возможность различного представления в нашем случае? Отношения R> и R< – это множества, а множество – структура неупорядоченная, значит, в таблицах, соответствующих этим отношениям, строки можно менять между собой местами. Но в то же время элементы этих множеств – это упорядоченные наборы, в нашем случае – упорядоченные пары чисел 3, 4, 5, значит, столбцы менять местами нельзя. Таким образом, мы показали, что представление отношения (в математическом смысле) в виде таблицы с произвольным порядком строк и фиксированным числом столбцов является приемлемой, правильной формой представления отношений.

Но если рассматривать отношения R> и R< с точки зрения заложенной в них информации, то понятно, что они эквивалентны. Поэтому в реляционных базах данных понятие «отношение» имеет несколько другой смысл, нежели отношение в общей математике. А именно оно не связано с упорядоченностью по столбцам в табличной форме представления. Вместо этого вводятся так называемые схемы отношений «строка – заголовок столбцов», т. е. каждому столбцу дается заголовок, после чего их можно беспрепятственно менять местами.

Вот как будут выглядеть наши отношения R> и R< в реляционной базе данных.

Отношение строгого порядка (вместо отношения R>):

Отношение строгого порядка (вместо отношения R<):

Обе таблицы-отношения получают новое (в данном случае одинаковое, так как введением дополнительных заголовков мы стерли различия между отношениями R> и R<) название.

Итак, мы видим, что при помощи такого несложного приема, как дополнение таблиц необходимыми заголовками, мы приходим к тому, что отношения R> и R< становятся эквивалентными друг другу.

Таким образом, делаем вывод, что понятие «отношение» в общем математическом и в реляционном смысле совпадают не полностью, не являются тождественными.

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

<p>Лекция № 2. Отсутствующие данные</p>

Похожие книги

97 этюдов для архитекторов программных систем

Нил Форд, Билл де Ора

Архитекторы программного обеспечения играют ключевую роль в успехе проектов. Книга "97 Этюдов для архитекторов программных систем" предлагает практические советы от ведущих специалистов. Она охватывает широкий спектр тем, от решения распространенных проблем до создания эффективных команд. Авторы, включая Билла де Ору, Майкла Хайгарда и Нила Форда, делятся своим опытом, предлагая решения для повышения качества и эффективности работы в сфере разработки ПО. Книга является ценным ресурсом для всех, кто хочет улучшить свои навыки проектирования архитектуры программных систем и добиться успеха в IT-профессии.

BPwin и Erwin. CASE-средства для разработки информационных систем

Сергей Владимирович Маклаков

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

MySQL: руководство профессионала

Алексей В Паутов, Алексей В. Паутов

Это практическое руководство по MySQL, основанное на заметках автора, посвященных версиям 4 и 5. Оно предоставляет глубокое понимание работы с базами данных MySQL, особенно в отношении точной математики и типов данных. Особое внимание уделено местам, специфичным для каждой версии. Материал логически продолжает предыдущее руководство «MySQL: Руководство администратора» и ориентирован на ту же аудиторию. Автор Алексей В. Паутов, используйте ссылку на автора и проект RussianLDP:MySQL при любом использовании.

Программирование. Принципы и практика использования C++ Исправленное издание

Бьёрн Страуструп, Ирина Сергеевна Козлова

Это переработанное издание популярной книги по C++ от автора языка. Книга подробно описывает язык программирования C++, предоставляя практические примеры и подходы к решению задач. В ней освещены как базовые, так и продвинутые концепции, включая стандартную библиотеку шаблонов (STL), пространства имен, механизм идентификации типов во время выполнения (RTTI), явные приведения типов (cast-операторы) и другие. Добавлены новые приложения по локализации и безопасной обработке исключений. Книга подходит для программистов, преподавателей, студентов и всех, кто хочет изучить C++.