Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Разработка БД в приложении СУБД Access. Понятие целостности БД, целостность данных и ссылочная целостность




Разработка БД в приложении СУБД Access. Понятие БД и СУБД. Ключи таблиц, ограничения целостности данных.

СУБД – система управления базами данных – это комплекс программ, предназначенный для создания, ведения и модификации данных в базе данных.

СУБД Access – это комплекс программ, для создания реляционных баз данных. В основе реляционных баз данных лежит понятие отношения (relation) - двумерной таблицы особого вида, предназначенной для любого представление данных. Набор таблиц (или отношений) может быть использован для моделирования взаимосвязей между объектами реального мира и для хранения данных об этих объектах.

Состояние свойства реального объекта реального мира в виде данного называется атрибутом объекта, то есть иначе атрибут - количественная или качественная характеристика объекта.

Существует 3 типа атрибутов: ключевые, описательные, производные.

Ключевые атрибуты предназначены для однозначной идентификации объекта.

Описательные атрибуты – описательные характеристики объекта. Например, ФИО, адрес и т.д.

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

* - первичный ключ

· - описательный атрибут

() – производный атрибут

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

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

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

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

- данные, вводимые в поле внешнего ключа должны повторять значения первичного ключа главной таблицы, но в отличии от неповторяющихся значений первичного ключа, во внешнем ключе одно и то же данное может повториться несколько раз;

- типы данных полей внешнего и первичного ключей совпадают;

- размеры полей внешнего и первичного ключей совпадают.

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

Внешний ключ, также как и первичный ключ, определяется с помощью свойства ‘Индексированное поле’, только в этом случае его значение примет вид – “Да (совпадения допускаются)”.

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

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

· в главной таблице нельзя удалить запись, если не удалены связанные с ней записи в подчиненной таблице;

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

В случае если пользователь нарушил эти условия в операциях обновления или удаления данных в связанных таблицах, Access выводит соответствующее сообщение и не допускает выполнения операции. Access автоматически отслеживает целостность данных, если между таблицами в схеме данных установлена связь с параметрами обеспечения целостности. При вводе некорректных данных в связанные таблицы выводится соответствующее сообщение. Access не позволяет создавать связи с параметрами обеспечения целостности в схеме данных, если ранее введенные в таблицы данные не отвечают требованиям целостности.
Отметим, что установление между двумя таблицами связи типа один к одному или один ко многим и задание параметров целостности данных возможно только при следующих условиях:

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

· обе таблицы сохраняются в одной базе данных Access;

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

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

Ссылочная целостность:

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

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

¡ запрещается производить удаление кортежа, на который существуют ссылки, нужно сначала либо удалить ссылающиеся кортежи, либо соответствующим образом изменить значения их внешнего ключа;

¡ при удалении кортежа, на который имеются ссылки, во всех ссылающихся кортежах значение внешнего ключа должно автоматически становиться неопределенным;

¡ при удалении кортежа из отношения, на которое ведет ссылка, из ссылающегося отношения должны автоматически удаляться все ссылающиеся кортежи (это называетсякаскадным удалением).

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

Критерии целостности:

¡ Каждой записи основной (главной, родительской) таблицы соответствует нуль или более записей дополнительной (подчинённой, дочерней) таблицы.

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

¡ Каждая запись дополнительной таблицы имеет только одну родительскую запись основной таблицы.

 

СУБД – система управления базами данных – это комплекс программ, предназначенный для создания, ведения и модификации данных в базе данных.

СУБД Access – это комплекс программ, для создания реляционных баз данных. В основе реляционных баз данных лежит понятие отношения (relation) - двумерной таблицы особого вида, предназначенной для любого представление данных. Набор таблиц (или отношений) может быть использован для моделирования взаимосвязей между объектами реального мира и для хранения данных об этих объектах.

Одна из непосредственных задач СУБД (здесь и далее речь идет о реляционных СУБД, поэтому слово "реляционный" опускается) - осуществлять контроль целостности данных. Под целостностью данных подразумевается логическая непротиворечивость данных. Различают три понятия целостности:

- Целостность в отношении конкретной базы.

Такие данные, как возраст, рост, вес не могут быть отрицательными. IP-адрес имеет строго заданный формат - это четыре числа в диапазоне от 0 до 255, разделенных точкой, плюс дополнительные ограничения на использование 0, 255 и спецадресов. Большинство СУБД не предоставляют механизмов, в полной мере позволяющих контролировать данный тип целостности.

- Целостность сущностей.

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

- Ссылочная целостность.

Одной записи в таблице гостевых книг может соответствовать несколько записей в таблице сообщений. Таблицы могут находиться во взаимосвязях один к одному, один ко многим и многие ко многим. Связи между таблицами осуществляются на основании внешних ключей. В таблице сообщений не может быть сообщения, принадлежащего к несуществующей гостевой книге, иначе говоря, любой записи в таблице сообщений должна найтись запись в таблице гостевых книг. СУБД должна предоставлять механизмы для контроля операций и соблюдения ссылочной целостности при выполнении операций INSERT, UPDATE и DELETE. К сожалению, не все СУБД имеют такие механизмы.

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

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

Целостность данных означает:

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

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




Поделиться с друзьями:


Дата добавления: 2015-05-09; Просмотров: 3753; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.022 сек.