Перейти к содержимому

Зачем обеспечивать целостность данных в access

  • автор:

Сохранение целостности данных в схемах модели базы данных

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

Предполагаемое действие:

  • Понимание правил целостности данных
  • Действия с наборами для обеспечения целостности данных
  • Задание значения по умолчанию для столбца
  • Отображение целостности данных с использованием нотации

Правила целостности ссылочных данных

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

Предположим, в базе данных «Книги» имеются две таблицы — «Названия» и «Авторы». У каждой книги есть только один автор, но каждый автор может иметь несколько книг — это называется связью «один-ко-многим». Таблица на стороне «один» называется родительская таблица. Таблица на стороне «многие» — дочерняя таблица.

Чтобы собрать сведения о каждой книге и ее авторе, в запросах используются ключи для связи каждой книги в таблице «Названия» с ее автором в таблице «Авторы». В родительской таблице («Авторы») должен быть первичный ключ, однозначно определяющий каждую строку. В таблице «Названия» должен быть столбец, содержащий значение «КодАвтора» для каждой книги. Этот столбец называется внешний ключ. Первичный ключ определяет каждого автора, а внешний ключ — книги, написанные этим автором.

Если значение «КодАвтора» в родительской таблице будет изменено, а его обновление в таблице «Названия» выполнено не будет, книги в таблице «Названия» будут отображены с неверным автором.

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

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

Установка действий для обеспечения целостности данных

  1. Дважды щелкните связь, для которой требуется установить действие.
  2. В окне «Свойства базы данных» в группе Категории выберите вариант Действие ссылочной целостности.
  3. Выберите действие, которое база данных должна выполнить с соответствующим значением в дочерней таблице:
    • Без действия При изменении или удалении значения в первичном ключе родительской таблицы соответствующее значение во внешнем ключе дочерней таблицы остается без изменений.
    • Каскад При изменении или удалении значения в первичном ключе родительской таблицы соответствующее значение во внешнем ключе дочерней таблицы изменяется или удаляется, чтобы совпадать с первичным ключом.
    • Присвоить пустое значение При изменении или удалении значения в первичном ключе родительской таблицы соответствующее значение во внешнем ключе дочерней таблицы будет NULL.
    • По умолчанию При изменении или удалении значения в первичном ключе родительской таблицы соответствующему значению во внешнем ключе дочерней таблицы будет задано значение по умолчанию.
    • Не обеспечивать Это действие отключает правила целостности данных для этой связи.

Примечание: Если параметры Присвоить пустое значение и По умолчанию недоступны, вероятно, для связи выбран параметр «Необязательный» на вкладке Прочее окна «Свойства базы данных».

Задание значения по умолчанию для столбца

Чтобы воспользоваться действием По умолчанию, для столбца необходимо задать значение по умолчанию.

  1. Дважды щелкните таблицу в схеме, чтобы открыть окно «Свойства базы данных».
  2. В группе Категории выберите вариант Столбцы, выделите столбец, для которого требуется создать значение по умолчанию, а затем нажмите кнопку Изменить.
  3. На вкладке Определение диалогового окна Свойства столбца введите значение по умолчанию.

Отображение целостности данных с помощью нотации

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

Что означают буквы в нотации целостности данных

В нотации целостности данных связи отображаются двумя буквами, разделенными двоеточием, в виде: [выполненное действие в родительской таблице]:[результат в дочерней таблице]. Например, «d:C» означает удаление какого-либо элемента в родительской таблице, что приведет к каскадным изменениям в дочерней таблице.

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

  • u Данные в родительской таблице обновлены.
  • Данные в родительской таблице d будут удалены.

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

  • R (без действия) Изменение дочерней таблицы не требуется.
  • C (каскад) Повторение изменения в дочерней таблице.
  • D (по умолчанию) Вставка значения по умолчанию, заданного ранее для этого столбца в дочерней таблице.
  • N (присвоить пустое значение) Задание дочерней таблице значения NULL.
  • (Пусто) Не следить за целостностью данных этой связи.

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

Отображение целостности данных

  1. В меню База данных выберите пункт Параметры, а затем — команду Документ.
  2. На вкладке Отношение в группе Показывать установите флажок Действия ссылочной целостности.

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

Обеспечение целостности данных в базе

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

Обязательными условиями поддержки целостности данных в приложении Access являются следующие:

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

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

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

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

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

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

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

Редактирование и удаление связей между таблицами

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

  1. Если таблицы, между которыми необходимо изменить связь, открыты, то их нужно закрыть, так как изменять параметры связи между открытыми таблицами нельзя.
  2. Выбрать на вкладке Работа с базами данных команду Схемаданных (группа Показатьилискрыть).
  3. В окне Схемыданных дважды щелкнуть на линии объединения, которую необходимо откорректировать. Откроется диалоговое окно Изменениесвязей, в котором можно изменить опции связей между таблицами и настроить режим обеспечения целостности данных.
  4. Внести необходимые изменения и щелкнуть на кнопке ОК.

Для того, чтобы удалить межтабличную связь необходимо выполнить следующее:

  1. Щелкнуть на требуемой линии объединения в окне Схемаданных (линия при этом станет более жирной) и нажмите клавишу .
  2. На экране появится диалоговое окно Access, в котором нужно будет подтвердить удаление связи.

ПОРЯДОК ВЫПОЛНЕНИЯ РАБОТЫ

По заданию требуется:

  1. Создать таблицы в режиме конструктора на основании созданной ER-диаграммы.
  2. Определить тип данных для каждого поля.
  3. Установить для каждой таблицы первичный ключ.
  4. Создать схему данных для базы данных.
  5. Написать отчет по лабораторной работе.

Задание №1. Создайте пять таблиц в режиме конструктора: Товары, Поставщики, Клиенты, Поступление товара, Выдача товара.

Для чего используется свойство обеспечения целостности данных?

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

Целостность данных — это термин, который часто используется в информатике. Он означает, что имеющиеся данные полны и условия по обеспечению их безопасности полностью соблюдены. А это значит, что с информацией никаких изменений ни под каким предлогом не производилось. Другими словами, целостность данных — это специальное их свойство, которое своим выполнением обеспечивает данным определенный вид и надлежащее качество.

Зачем используется свойство обеспечения целостности данных

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

Для чего используется свойство обеспечения целостности данных?

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

  1. Отсутствие возможности корректировки значения связанного поля в подчиненной таблице, если данное значение отсутствует в связанном поле главной таблицы. Например, нет возможности создать запись для регистрации книги, которую написал несуществующий автор — такую запись можно создать только в том случае, если в поле «автор» ввести значение «NULL», означающее, что книга пока не принадлежит никому из авторов.
  2. Нет возможности удалить какую-либо запись из главной таблицы, если с этой записью существует хоть какая-то связь с записями подчиненной таблицы. Например, нет возможности уничтожить запись из таблицы «Издательский дом», если в другой таблице «Книги» есть книги, которые выпустило именно это издательство.
  3. Нет возможности поменять значение ключевого поля главенствующей таблицы, пока в ней есть записи, имеющие связь с подчиненной таблицей. Например, нет возможности откорректировать ID писателя в таблице «Авторы», пока в другой таблице «Книги» есть записи о трудах этого писателя.

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

Заключение

Зачем используется свойство целостности данных в Microsoft Access? Это помогает сохранить данные с корректными связями между разными таблицами. В первую очередь это свойство помогает вам, чтобы вы случайно не удалили что-то лишнее и не спровоцировали дополнительные проблемы и хлопоты.

Разберем ситуацию на практике. К примеру, вы занимаетесь координацией грузоперевозок. Для этого вы создали несколько таблиц в базе данных, например «Грузоперевозчики» и «Заказы на перевозку». То есть большая вероятность, что один ваш грузоперевозчик своими несколькими машинами может обслуживать сразу несколько заказов из таблицы «Заказы на перевозку», то есть задействовано правило «один на несколько». Прошло какое-то время, вы хотите перестать сотрудничать с грузоперевозчиком и вам, соответственно, нужно удалить его из таблицы «Грузоперевозчики». Но если у этого грузоперевозчика есть активные заказы из таблицы «Заказы на перевозку», то они, в случае его удаления, станут «потерянными» записями, так как ID грузоперевозчика станет недействительным, потому что записи с этим ID больше не существует. А если таких записей много? А если таких грузоперевозчиков много? Тогда в ваших таблицах будет полнейший бардак. Но ситуацию выручает обеспечение целостности данных в Access. Данное свойство просто не даст вам удалить грузоперевозчика, пока у него есть активные заказы в другой таблице.

Зачем обеспечивать целостность данных в access

MS Access базы, помощь студентам

Целостность данных в Microsoft Access

Коротко про целостность данных в Microsoft Access. В Access используется система правил, предназначенных для поддержания устойчивых и корректных связей между записями в связанных таблицах, а также обеспечивающих защиту от случайного удаления или изменения связанных данных. Установлены следующие ограничения:
• связанное поле главной таблицы является ключевым полем или имеет уникальный индекс;
• связанные поля имеют один тип данных;
• если таблицы являются связанными, то они должны быть таблицами базы данных Access. Для связанных таблиц из баз данных других форматов установить целостность данных невозможно. Для обеспечения целостности база данных, в которой находятся таблицы, должна быть открыта.
Для соблюдения этих правил в Access отслеживаются и блокируются следующие действия:
• нельзя ввести в поле внешнего ключа связанной таблицы значение, не содержащееся в ключевом поле главной таблицы. Однако в поле внешнего ключа возможен ввод значений Null, показывающих, что записи не являются связанными. Например, нельзя сохранить запись, регистрирующую книгу, написанную несуществующим автором, но можно создать запись для книги, которая пока не отнесена ни к одному из авторов, если ввести значение Null в ключевое поле id_aвтopa;
• нельзя удалить запись из главной таблицы, если существуют связанные с ней записи в подчиненной таблице. Например, невозможно удалить запись из таблицы Издательства, если в таблице Документы имеются книги, выпущенные этим издательством;
• нельзя изменить значение первичного ключа в главной таблице, если существуют записи, связанные с данной записью. Например, невозможно изменить код сотрудника в таблице Авторы, если в таблице Документы имеются книги этого автора.

Скачать Microsoft Office 2013 бесплатно

Проблемы с базой данной Access? Не можете сдать курсовую и получить зачет? Заходите в группу ВКонтакте vk.com/access_community. Поможем!

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *