1.  Понятие БД. Модели БД. Реляционная модель. Основные свойства РБД. 12 правил Кодда.

В наст время существуют 4 основных модели данных, используемых в ИС:

1.      Иерархическая.

2.      Сетевая.

3.      Реляционная.

4.      Объектная.

Так же выделяют смешанную объектно – реляционную модель.

Принято делить СУБД на настольные и промышленные.

Настольные – для создания небольших настольных ИС (н.р. Access, FoxPro…).

Промышленные – ориентированы н создание ИС, оперирующих большим объемом информации, с повышенными требованиями безопасности (н.р. Oracle, MSSQL Server…), такие системы работают по принципу серверов БД.

Настольные СУБД типа Access, FoxPro коме обычного доступа к данным, предоставляют набор библиотек для создания интерфейса пользователя.

Промышленные СУБД не предоставляют такую возможность и для создания клиентского приложения должен использоваться какой – либо из ЯП.

При создании клиент – серверного приложения, важным является механизм для осуществления  связи между клиентом и сервером.

Стандартных механизм такой связи в Windows является ODBS (Open Data Base Connectivity).

Базы данных — это совокупность сведений (о реальных объектах, процессах, событиях или явлениях), относящихся к определенной теме или задаче, организованная таким образом, чтобы обеспечить удобное представление этой совокупности как в целом, так и любой ее части.

Реляционная база данных представляет собой множество взаимосвязанных таблиц, каждая из которых содержит информацию об объектах определенного типа. Каждая строка таблицы включает данные об одном объекте (например, клиенте, автомобиле, документе), а столбцы таблицы содержат различные характеристики этих объектов — атрибуты (например, наименования и адреса клиентов, марки и цены автомобилей). Строки таблицы называются записями; все записи имеют одинаковую структуру — они состоят из полей, в которых хранятся атрибуты объекта. Каждое поле записи содержит одну характеристику объекта и имеет строго определенный тип данных (например, текстовая строка, число, дата). Все записи имеют одни и те же поля, только в них содержатся разные значения атрибутов.

В теории РБД на таблицу накладывает ряд жестких требований:

1.      Каждый столбец должен иметь уникальное имя, содержимое столбца должно соответствовать определенному типу данных. « таблицы, отличающиеся порядком действия являются тождественными.

2.      2 таблицы отличающиеся только порядком следования строк считаются тождественными.

3.      На пересечении столбца и строки должен находиться неделимый элемент (требование 1 норм. формы).

4.      На количество столбцов в таблице может накладываться ограничение СУБД, а строки ограничиваются только возможностями системы (столбцам – тесно, строкам- свободно).

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

Совокупность элементов строки однозначно её определяющая называется ключом.

Ключ, который не содержит  в себе другие ключи называется первичный ключ.

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

Для работы с данными используются системы управления базами данных (СУБД).

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

И последняя функция СУБД — это управление данными. Под управлением данными обычно понимают защиту данных от несанкционированного доступа, поддержку многопользовательского режима работы с данными и обеспечение целостности и согласованности данных.

Защита от несанкционированного доступа обычно позволяет каждому пользователю видеть и изменять только те данные, которые ему разрешено видеть или менять. Средства, обеспечивающие многопользовательскую работу, не позволяют нескольким пользователям одновременно изменять одни и те же данные.

Средства обеспечения целостности и согласованности данных не дают выполнять такие изменения, после которых данные могут оказаться несогласованными. Например, когда две таблицы связаны отношением "один-ко-многим", нельзя внести запись в таблицу на стороне "многие" (ее обычно называют подчиненной), если в таблице на стороне "один" (главной) отсутствует соответствующая запись.

В 70-х годах Кодд предложил РБД. Позже он сформулировал 12 правил, затем добавил «нулевое» правило и правило для нулевого правила.

1.Правило информации. Вся информация на логическом уровне, представляет собой только содержимое таблиц без использования дополнительных указателей, индексов и т.д. (это общее правило, все данные формируются на основе данных, а не №столбца, №строки только содержимое).

2.      Правило гарантированного доступа. Каждый элемент таблицы доступен через имя таблицы, имя столбца, значение первичного ключа (всех ключей), т.е любого атрибута.

3.      Правило поддержки NULL – значений. Для представления несуществующих данных любого типа используется Null.

4.      Правило каталога (динамический каталог). Каталог в РБД – описание данных в виде таблицы (метаданные, описывающие БД, описание имеет табличную структуру).

5.      Правило исчерпывающего языка данных. В РБД должен быть только 1 главный язык описания и модификации (SQL), который позволяет описать данные (DDL), определить представления, обработать данные (DML), описать условия целостности, идентификация прав доступа, описание транзакционных механизмов.

6.      Правило обновления представлений. Все теоретически обоснованные представления должны быть доступны для обновления (при обращению к представлению должны всегда получать «свежую» информацию (данные)).

7.      Правило изменения данных. Работа с несколькими данными (набор строк) должна быть доступна не только для команд выборки, но и для команд изменения.

8.      Физическая независимость данных. Физические изменения в данных не должны влиять на работу прикладной программы.

9.      Логическая независимость данных. При добавлении и удалении элементов БД, не должны меняться другие части БД.

10.  Независимость целостности. Первичный ключ не может иметь значение Null.Он должен быть уникален. Для каждого значения внешнего ключа должно соответствовать знание родительского (первичного) ключа. Условие целостности должно храниться не в прикладной программе, а в БД.

11.  Независимость распределения. В распределенной БД данные располагаются независимо друг от друга. Для пользователя эта БД должна выглядеть централизованной.

12.  Правило соблюдения правил. Нельзя обходить ограничения, введенные с помощью SQL.

13.  «Нулевое правило». Любая система, претендующая на то, чтобы считаться реляционной системой, управляющей БД, должна полностью управлять БД на основе её реляционных свойств.

14.  «Правило для нулевого правила». Должен отсутствовать путь обхода нулевого правила.

 

Hosted by uCoz