Удалить одну из записей в основной таблице. Перейти в связанную таблицу и проверить, удалены ли в ней соответствующие записи.

Пример.Таблицы СТУДЕНТЫ и ПРЕДМЕТ связаны отношением *-*.

 

Рис. 34. Пример связывания таблиц *-*

В данном примере следующие типы ключей:

· в таблице Студенты первичный ключ код студента

· в таблице Предмет первичный ключ код предмета.

· в таблице Оценки два внешних ключа: код студента и код предмета (т.к. эта таблица находится на стороне «многие»).

Соответственно, таблицы Оценки и Студенты связаны по полю код студента, а таблицы Оценки и Предмет связаны по полю код предмета.

Часто бывает эффективно пользоваться Мастером подстановок, для того, чтобы в дополнительную таблицу вводить данные путем подстановки значений и полей основной таблицы. Такие таблицы потом достаточно легко связываются.

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

Изменение первичного ключа

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

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

Ключевое поле всегда уникально и не допускает пустых полей в записях.

 


Реляционные таблицы. Типы данных. Свойства полей.

Реляционные таблицы.

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

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

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

Типы данных СУБД Access.

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

Рассмотрим основные типы данных, поддерживаемых, реляционными СУБД, например, Microsoft Access.

Таблица 2.

Типы данных

Тип данных Использование Размер поля
Текстовый (Text) Для алфавитно-цифровых данных, например имена и адреса, номера телефонов и почтовые индексы. до 255 байт
Поле MEMO (Memo) Для алфавитно-цифровых данных большего размера: предложения, абзацы, тексты, например, комментарии и пояснения. до 64000 байт
Числовой(Number) Для числовых данных, допускающих проведение математических расчетов, за исключением денежных. 1, 2, 4, или 8 байт
Дата/время (Date/Time) Для хранения календарных дат или значений времени. Позволяет выполнять вычисления в единицах измерения времени: минутах, секундах, часах, днях, месяцах и годах. (Например, можно вычислить разницу в днях между двумя значениями даты) 8 байт
Денежный (Currency) Для хранения денежных значений, которые всегда выводятся с указанным числом десятичных знаков после запятой. Не рекомендуется использовать для проведения денежных расчетов значения, принадлежащие к числовому типу данных, т.к. они могут округляться при расчетах. 8 байт
Счётчик (Auto-Number) Автоматически вставляющиеся последовательные номера. Нумерация начинается с 1. Это уникальное длинное целое, генерируемое Microsoft Access при создании каждой новой записи. В таблице не может содержаться более одного поля с таким типом данных. Это поле удобно для создания первичного ключа, является совместимым с полем числового типа. 4 байта
Логический (Yes/No) Для хранения логических данных – значений Истина/Ложь, Да/Нет, Вкл./Выкл. Используется, если, например, необходимо отметить оплачены ли счета, заполнены ли заказы и т.п. 1 бит
Поле объекта OLE (OLE Object) Для хранения картинок, диаграмм, звуковых фрагментов, которые могут иметь связи с другими приложениями Windows, т.е. объекты, созданные в других программах, поддерживающих протокол OLE, которые связываются или внедряются в базу данных MS Access через элемент управления в форме или отчете. Например, можно хранить и редактировать документы Word, электронные таблицы Excel, слайды презентаций, звуковые файлы, видео-файлы или рисунки. До 1 Гбайт
Гиперссылка (Hyperlink) Для простых или сложных «ссылок» на внешний файл или документ, находящийся в локальной сети, Web или на жестком диске локального ПК До 2048 символов
Мастер Подстановок Создает столбец подстановки, в котором отображается список значений для выбора. Данному типу соответствует поле со списком, позволяющее выбирать значения из другой таблицы или из списка фиксированных значений.  

Свойства полей таблицы.

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

Таблица 3

Свойства полей таблицы.