Хранение и обработка информации в базах данных
Основные понятия
База данных -
совокупность определенным образом организованной информации на какую-то тему (в рамках некоторой предметной области).
Примеры:
- База данных книжного фонда библиотеки
- База данных кадрового состава учреждения
- База данных законодательных актов в области уголовного права
- База данных современных эстрадных песен
Назначение
- Хранение большого объема информации
- Поиск большого объема информации
Базы данных
Фактографические
Документальные
Обширная информация разного типа (текст, графика, звук, мультимедиа)
Краткие сведения об описываемых объектах, представленные в строго определенном формате
5
«Компьютерная» база данных -
организованная совокупность данных, предназначенная для длительного хранения во внешней памяти компьютера и постоянного применения.
5
Реляционная БД
имеет табличную форму организации.
Понятность таблиц
В реляционных БД строка таблицы называется записью , а столбец – полем .
Поле 1
Запись 1
. . .
Поле 2
Запись 2
. . .
. . .
. . .
Поле 3
. . .
. . .
Поле 4
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
База данных «Домашняя библиотека»
Номер
0001
Автор
0002
Название
Беляев А. Р.
0003
Кервуд Д.
Человек-анфибия
Год
1987
0004
Тургенев И. С.
Бродяги Севера
Полка
1991
5
Повести и рассказы
Олеша Ю. К.
7
1982
Избранное
1
1987
5
Поле
Запись
Поле – это различные характеристики (атрибуты) объекта. Значения полей в одной строке относятся к одному объекту.
Одна запись содержит информацию об одном объекте той реальной системы, модель которой представлена в таблице. Например, домашняя библиотека – множество книг, а отдельный объект такой системы – это книга. Значит, одна запись в базе данных «Домашняя библиотека» – это информация об одной книге из библиотеки.
В реляционной БД не должно быть совпадающих записей!
Ключевое поле (ключ таблицы) –
это поле (или совокупность полей), которое однозначно определяет запись.
Могут ли эти данные быть ключом?
- фамилия имя номер паспорта номер дома регистрационный номер автомобиля город проживания дата рождения
- фамилия
- имя
- номер паспорта
- номер дома
- регистрационный номер автомобиля
- город проживания
- дата рождения
База данных «Средние школы районных центров»
Город
№ _школы
Крюков
1
Шадринск
Директор
1
Адрес
Иванов А. П.
Шадринск
Телефон
Пушкина, 5
. . .
Строев С. С.
2
. . .
Лесная, 14
Иванов А. П.
4-12-35
. . .
4-23-11
Мира, 34
. . .
4-33-24
. . .
Не всегда удается определить одно
поле в качестве ключа!
В такой таблице у разных записей не могут совпасть только одновременно два поля : Город и №_школы . Эти два поля вместе составляют составной ключ : ГОРОД – №_ШКОЛЫ . Составной ключ может состоять и более чем из двух полей.
Типы полей
Тип поля определяет множество значений, которые может принимать данное поле в различных записях.
В реляционных БД используются четыре основных типа поля:
- числовой;
- символьный;
- дата;
- логический.
Числовой тип
имеют поля, значения в которых могут быть только числами.
Например, в БД «Средние школа районных центров» одно поле будет числового типа: №_школы .
С числовыми величинами можно выполнять арифметические операции.
Символьный тип
имеют поля, в которых будут храниться символьные последовательности (слова, тексты, коды и т. п.).
Например, в БД «Средние школа районных центров» одно поле будет числового типа: Город, Директор, Адрес, Телефон .
Тип «дата»
имеют поля, содержащие календарные даты в форме «день/месяц/год».
Логический тип
имеют поля, которые могут принимать всего два значения: «да», «нет» или «истина», «ложь» («true», «false»)
Размер поля
Для полей символьного и числового типов требуется определить их размер . При определении размера поля нужно ориентироваться на максимально длинное значение, которое может храниться в этом поле. В некоторых случаях для числовых полей нужно задавать не длину, а числовой формат (целое, длинное целое, с плавающей точкой и т. д.). Поля типа «дата» и логического типа имеют стандартный размер.
Пример. Описать структуру БД «Репертуар кинотеатра на неделю».
Описать структуру – это значит указать все поля таблицы и их характеристики.
Название поля
Тип
Кинотеатр
Размер
Фильм
Символьный
Время
Кол-во десятичных знаков
15
Символьный
Стоимость_билета
25
Время
Числовой
7
2
Пример. Дан фрагмент реляционной БД. Указать первичный ключ и описать характеристики полей
Номер_рейса
Дата_вылета
2156
23.10.13
Тип_самолета
Цена_билета
ТУ-154
4016.50
Наличие_билетов
да
Первичный ключ: номер_рейса + дата_вылета.
Описание полей:
Название поля
Тип
Номер_рейса
Дата_вылета
Размер
Числовой
Тип_самолета
Кол-во десятичных знаков
Дата
4
Цена_билета
Символьный
Наличие_билетов
Числовой
10
5
Логический
2
Пример. Преобразовать к табличной форме иерархическую структуру:
Пермский государственный университет
Физический факультет
Химический факультет
Биологический факультет
Кафедра общей физики
Кафедра органической химии
Кафедра ботаники
Кафедра теоритической физики
Кафедра неорганической химии
Кафедра зоологии
21
Решение .
Заполнение строк таблицы происходит путем перемещения по дереву снизу вверх (от листьев к корню). Главный ключом таблицы будет Название_кафедры .
Название_кафедры
Общей физики
Факультет
Теоритической физики
ВУЗ
Физический
Органической химии
ПГУ
Физический
Неорганической химии
ПГУ
Химический
Ботаники
ПГУ
Химический
ПГУ
Биологический
Зоологии
ПГУ
Биологический
ПГУ
СУБД (Система Управления Базами Данных) –
программное обеспечение для работы с базами данных.
Большинство современных СУБД предназначены для работы с реляционными базами данных (реляционные СУБД).
Этапы создания базы данных:
- Проектирование БД – теоритический этап работы. На этом этапе определяется:
- какие таблицы будут входить в состав БД; структура таблиц; первичные ключи каждой таблицы.
- какие таблицы будут входить в состав БД;
- структура таблиц;
- первичные ключи каждой таблицы.
- Создание структуры . На этом этапе с помощью конкретной СУБД описывается структура таблиц, входящих в состав БД. Ввод записей . Заполнение таблиц базы данных информацией.
- Создание структуры . На этом этапе с помощью конкретной СУБД описывается структура таблиц, входящих в состав БД.
- Ввод записей . Заполнение таблиц базы данных информацией.