ОРГАНИЗАЦИЯ БАЗ ДАННЫХ И СИСТЕМЫ УПРАВЛЕНИЯ БАЗАМИ ДАННЫХ
ОРГАНИЗАЦИЯ БАЗ ДАННЫХ И СИСТЕМЫ УПРАВЛЕНИЯ БАЗАМИ ДАННЫХ
Систематизация и хранение информации
Кто владеет информацией, тот владеет миром. В каком виде может храниться информация, чтобы с ней было удобно работать? У вас наверняка есть записная книжка. Если вы записываете информацию без всякой системы: телефоны, дни рождения друзей, расписание ваших занятий, какие-либо ближайшие события, то, вероятно, вам сложно найти нужную информацию. Что же делать? Вы можете навести какой-либо порядок в своей информации. Например, записывать информацию об Иванове на странице «И», выделить часть книжки под текущие события и т.д. Т.е. структурировать вашу информацию.
Информационной системой (ИС) можно считать совокупность любой связанной структурированной информации. Например, в качестве информационной системы можно рассматривать расписание движения поездов или книгу регистрации данных о заказах. Слова «структурированная информация» означают, что информация определенным образом организована.
Информационная система позволяет облегчить труд человека, повысить качество и достоверность обработки информации.
Информационная система может храниться как в «бумажном» варианте, так и в памяти компьютера.
Основу информационной системы составляют хранящиеся в ней данные. Хорошая информационная система должна предоставлять достоверную информацию в определенное время конкретному лицу с ограниченными затратами.
Объектом называется элемент информационной системы, информация о котором сохраняется в ней.
Объект может быть реальным (человек, населенный пункт, какой-либо предмет) и абстрактным (событие,,счет покупателя).
Например, при продаже автомобилей ИС будет содержать такие объекты: модель автомобиля (например, «ВАЗ-2107»), клиент (Сидоров), счет.
На товарном складе это будут поставщик, товар, отгрузка товара и т.д.
Каждый объект обладает набором свойств, которые запоминаются в ИС.
Например, объект клиент Сидоров может характеризоваться фамилией, именем, годом рождения, телефоном, адресом, номером счета.
Свойства, характеризующие объект, называются атрибутами объекта.
Например, модель автомобиля характеризуется типом кузова, рабочим объемом двигателя, количеством цилиндров, мощностью, габаритами и т.д.
Каждый атрибут имеет свое имя идентификатор.
Атрибут, записанный на каком-либо носителе информации, называют элементом данных, полем данных или просто полем.
При обработке данных часто встречаются однотипные объекты с одинаковыми свойствами. Клиент Булкин такэке характеризуется фамилией, именем, годом рождения и т.д.
Совокупность объектов, обладающих одинаковым набором свойств, называется классом объектов. Сидорова и Булкина можно объединить в класс «Клиенты».
Базы данных. Общие сведения. Основные понятия баз данных
База данных (БД) это совокупность хранимых в памяти ЭВМ и специальным образом организованных взаимосвязанных данных, единицей хранящейся в БД информации является таблица.
Создавая базу данных, пользователь стремится упорядочить информацию по различным признакам и быстро извлекать выборку с произвольным сочетанием признаков. Сделать это возможно, только если данные структурированы.
Единицей хранящейся в БД информации является таблица. Каждая таблица представляет собой совокупность строк и столбцов, где строки соответствуют экземпляру объекта, конкретному событию или явлению, а столбцы - атрибутам (признакам, характеристикам, параметрам) объекта, события, явления. В терминах БД столбцы таблицы называются полями, а ее строки -записями.
В каждой таблице БД может существовать первичный ключ - поле или набор полей, однозначно идентифицирующий запись. Значение первичного ключа в таблице БД должно быть уникальным, то есть в таблице не должно существовать двух или более записей с одинаковым значением первичного ключа. Вторичные ключи (индексы) устанавливаются по полям, которые часто используются при поиске и сортировке данных: вторичные ключи помогут системе значительно быстрее найти нужные данные. В отличие от первичных ключей поля для индексов могут содержать неуникальные значения - в этом, собственно, и заключается главная разница между первичными и вторичными ключами.
Между отдельными таблицами БД могут существовать связи (отношения). Связанные отношениями таблицы взаимодействуют по принципу главная-подчиненная. Главную таблицу называют родительской, а подчиненную - дочерней. Одна и та же таблица может быть главной по отношению к одной таблице БД и дочерней по отношению к другой. Существует три типа отношений между таблицами:
- отношение один-ко-многим означает, что одной записи из родительской таблицы может соответствовать несколько записей в дочерней таблице. Связь один-ко-многим является самой распространенной, она позволяет моделировать иерархические структуры данных;
- отношение один-к-одному имеет место, когда одной записи в родительской таблице соответствует одна запись в дочерней таблице. Данное отношение встречается значительно реже, чем отношение один-ко-многим. Его используют, если не хотят, чтобы таблица БД "распухала" от второстепенной информации. Связь один-к-одному приводит к тому, что для чтения связанной информации в нескольких таблицах приходится производить несколько операций чтения, что замедляет
получение нужной информации; - отношение многие-ко-многим означает, что каждой записи первой таблицы может соответствовать несколько записей второй таблицы, а каждой записи второй таблицы может соответствовать несколько записей первой таблицы. Считается, что БД всегда можно перестроить так, чтобы любая связь многие-ко-многим была заменена на одну или более связей один-ко-многим.
Система управления базами данных (СУБД) - комплекс программ и языковых средств, предназначенных для создания, ведения и использования баз данных.
Одним из важнейших назначений СУБД является обеспечение независимости данных (независимость данных и использующих их прикладных программ друг от друга в том смысле, что изменение одних не приводит к изменению других). Подобные системы служат для поддержания базы данных в актуальном состоянии и обеспечивают эффективный доступ пользователей к содержащимся в ней данным в рамках предоставленных пользователям полномочий.
Реляционные базы данных
Очень удобно заносить данные в таблицы.
Базы данных, которые организованы в виде нескольких таблиц, называются реляционными.
Таблица это некоторая структурированная информация, содержащая характеристики объекта или класса объектов.
В настоящее время это самый популярный способ хранения информации в электронном виде.
Каждая строка называется записью, а каждый столбец полем.
Данная таблица характеризует класс объектов «Сотрудник» и содержит 5 полей и 4 записи. Каждое поле имеет имя и тип.
Различают символьные, числовые, графические, даты, время, и др. типы полей. Поля Фамилия и Пол это символьные поля, Дата рождения имеет тип дата, Зарплата и Аванс суммы (денежный тип).
Домен это набор допустимых значений поля. Для приведенного примера:
- домен поля Фамилия любые русские буквы и дефис, поле не может содержать латинских букв, цифр, знаков препинания или каких-либо других символов;
- домен поля Пол значения «М», «м», «Ж», «ж»;
- домен поля Дата рождения значения в диапазоне от 1 января 1930 г. до 1990 г. (т,к. вряд ли на предприятии могут работать глубокие старцы и грудные младенцы);
- зарплата и аванс могут принимать только положительные значения.
Типы моделей данных
В настоящее время существует 3 модели данных.
Иерархическая.
Сетевая.
Реляционная.
Исторически первой появилась Иерархическая модель данных. Иерархическая модель данных строится по принципу иерархии типов объектов, т.е. один тип объекта является главным, а остальные подчиненными.
Данные представлены в виде деревьев. Две вершины дерева связаны отношением подчиненности. Дерево обязательно содержит одну вершину, которая не имеет главных. Такая вершина называется корнем. В данном случае это вершина 3. Вершины, которые не имеют подчиненных называются листьями, на рисунке это 1,2, 5, 7, 8, 9.
Вершина дерева хранит данные, характеризующие некоторый объект и несколько связей с подчиненными вершинами.
Между главными и подчиненными объектами установлено отношение «один ко многим». Для каждого подчиненного типа объекта может быть только один исходный тип объекта.
Главная вершина Отдел содержит информацию о названии, бюджете и телефоне отдела. Отдел имеет подчиненную вершину Руководитель с информацией Фамилия, Год рождения, Разряд и несколько подчиненных вершин сотрудники, каждый сотрудник характеризуется Фамилией, Адресом и т.д. Данное дерево содержит информацию об одном отделе. Для описания второго отдела требуется второе дерево. База данных будет содержать несколько деревьев одинаковой структуры. Возможные операции с иерархической базой данных: переход между деревьями, создание и удаление дерева, поиск вершины дерева, изменение информации в вершинах. Работа с иерархическими базами данных основана на математической теории графов.
Сетевая модель данных.
Понятие главного и подчиненного объекта несколько расширено. Любой объект может быть главным и подчиненным.
Каждый объект может участвовать в любом числе взаимодействий. Единственное ограничение отношение подчиненности не может вернуться обратно к вершине, с которой оно начиналось.
Отдел содержит информацию: Название, Бюджет, Телефон и связи с Руководителем и несколькими Сотрудниками. Руководитель характеризуется Датой вступления в должность, Годом рождения, Разрядом. Сотрудники характеризуются Фамилией, Адресом. Вершина Руководитель связана с одной из вершин Сотрудников, в ней хранятся Фамилия и Адрес руководителя.
Реляционная модель данных.
В реляционной модели данных объекты и взаимодействия между ними представляются с помощью таблиц. Каждая таблица должна иметь первичный ключ поле или комбинацию полей, которая единственным образом идентифицирует каждую строку таблицы.
В настоящее время реляционная модель данных является наиболее популярной. На ее идеологии построены СУБД FoxPro, Access, Visual C++ и д.p.
Возможные операции в реляционной базе данных: создание таблиц и связей, изменение структуры таблиц, добавление, удаление и изменения записей, поиск данных, отбор данных из одной или нескольких таблиц и т.д.
Работа с реляционными базами данных основана на реляционной алгебре.
ОРГАНИЗАЦИЯ БАЗ ДАННЫХ И СИСТЕМЫ УПРАВЛЕНИЯ БАЗАМИ ДАННЫХ