- •Курс за третий семестр. Введение в субд. Базы данных как аппарат моделирования.
- •Базы данных
- •Классификация бинарных отношений
- •Реляционные базы данных
- •Сжатие избыточной информации
- •Нормализация баз данных
- •Моделирование бд. Нарушение целостности
- •К эволюции сетевых бд (этапы)
- •Определение бд в рамках архитектуры «клиент-сервер»
- •Язык sql (Structured Query Language)
- •Структура sql
- •Ограничение ссылочной целостности
- •Команды dml
- •Предикаты в sql
- •Выборка из нескольких таблиц
- •Опции group by и having Группировка и групповые вычисления
- •Опции order by и union
- •Предикаты, использующие выборку Вложенные подзапросы
- •Создание представлений
- •Проблемы модификации представлений
- •Проблема исчезающих значений
- •Транзакции
- •Примеры транзакций
Программирование и алгоритмические языки.
Курс за третий семестр. Введение в субд. Базы данных как аппарат моделирования.
состояние(объект)статика
процедурадинамика объекта
тип данных
Базы данных
Как и в случае типов данных, цель систем управления базами данных (СУБД) – достаточно полное и точное в контексте решаемых задач формальное описание (моделирование) объектов и процессов некоторой реальной сферы деятельности (предметной области).
По-прежнему каждое из описывающих объекты понятий характеризуется набором характеристик, параметров, или атрибутов, а процессы преобразования объектов – процедурами модификации их значений.
Люди Дома
фамилия: string(30) город: string(30)
возраст: 1..150 улица: string(30)
номер: integer
Однако, в отличие от понятия типа, центральной задачей баз данных является формальное представление не столько процедур преобразования объекта, сколько информация о фактах о них в виде констатации наличия некой связи между объектами, бинарных отношений между ними. Если понятие типа ориентируется на динамическую, операционную сторону описания систем объектов, то понятие базы данных – на описательную, декларативную, реляционную сторону.
Если с точки зрения процедурного программирования всё есть функция, то с точки зрения баз данных приоритетно «всё есть отношение». Понятие отношения связывается, как правило, с некоторым свойством пар элементов и отождествляется соответствующим предикатом.
Замечание. Как всегда в программировании СУБД мы имеем дело с именованными аналогами классических понятий с явной и фиксированной системой обозначений.
Классический язык описания предикатов отношений – язык математической логики. Популярен более бедный, но более наглядный язык диаграмм – язык «сущность-связь», или язык ER-диаграмм (Entity Relation – сущность-связь).
Люди Дом
живёт
связь
Сущность – люди.
Имя связи – живёт.
Живёт (предикат): людидомаBoolean
Выделение на основе экспертной информации сущностей и их атрибутов, а также связей отношений между ними составляет первичную логическую основу, структуру БД. Адекватной задачей предметной области и оптимальной в смысле компактности хранения и скорости доступа к данным структуры БД называется её проектированием. Стандартная физическая реализация БД – файлы, то есть медленные наборы данных большой ёмкости на внешних, чаще всего механических, носителях. Связь БД с такими носителями во многом определяет специфику их эволюции.
Состояние БД, то есть хранимая в ней на данный момент информация, описывается с помощью таблиц, то есть явно задание некоторого конечного отношения, описывающего конкретное значение атрибутов объектов и их связи.
В терминологии СУБД строки таких таблиц принято называть записями, а их имена – полями или колоннами. Основной целью использования БД являются ответы на запросы пользователя, получение нужной ему информации как практически хранимой, так и логически выводимой.
Программные системы, снабжённые алгоритмом (машиной логического вывода), называются экспертными системами, или базами знаний.