|
|||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Редактирование структуры таблицыДля редактирования структуры таблицы, т. е. добавление новых полей или удаление некоторых полей из таблиц необходимо из режима таблицы перейти в режим конструирования таблицы для этого необходимо выделить пиктограмму (значок) нужной таблицы и воспользоваться кнопкой «Конструктор» в окне объектов БД. Затем можно добавить новое поле в таблицу, если выполнить щелчок правой кнопкой «мыши» по полю перед которым необходимо вставить новое поле и в контекстном меню выбрать пункт «Добавить строки». Для удаления поля необходимо выполнить по нему щелчок правой кнопкой «мыши» и в контекстном меню выбрать пункт «Удалить строки». Также для добавления (удаления) полей можно пользоваться пунктами меню «Вставка» - «Строки» («Правка» – «Удалить строку») или кнопками «Добавить строки» («Удалить строки») .
Связи между таблицами Структура БД в СУБД Access всегда разрабатывается таким образом, чтобы каждая таблица, которая в ней находится, не содержала избыточной информации. Например, в БД Образование необходимо хранить данные об оценках, которые получил каждый студент по тому или иному предмету. Как следствие, нужно также каким-то образом хранить и названия предметов, по которым эти оценки ставятся. Кроме этого, необходимо хранить фамилию, имя и отчество преподавателей с указанием предмета, который ведет каждый из них. Если для этих целей будет использоваться одна таблица, то станет очевидным нерациональное использование памяти компьютера, так как для каждого студента придется хранить в соответствующей записи названия предметов и фамилии преподавателей, которые будут повторяться много раз. Поэтому указанную информацию необходимо разбить на несколько таблиц, которые будут между собой взаимосвязаны, а именно: Студенты – информация о студенте, в частности уникальный код, который будет использоваться при хранении оценок: Преподаватели – информация о преподавателе, в частности уникальный код, используемый при хранении предметов; Предметы – информация о предмете, в частности уникальный код преподавателя, который ведет этот предмет, а также уникальный код предмета, используемый при хранении оценок; Успеваемость – информация об оценках студентов, в частности уникальный код для каждой записи с оценкой, код студента, код предмета и оценка, которая получена данным студентом по этому предмету. При этом для созданных таблиц необходимо установить связи, чтобы, например, по фамилии студента в таблице Студенты определить все записи с его оценками из таблицы Успеваемость. Для установки связей необходимо воспользоваться режимом Схема данных, который устанавливается командой Сервис – Схема данных или кнопкой Схема данных на панели инструментов. При выполнении данной команды на экране появится диалоговое окно Добавление таблицы в котором на вкладке Таблицы нужно добавить поочередно все таблицы между которыми необходимо установить связь в схему данных с помощью кнопки Добавить. Затем следует закрыть окно Добавление таблицы. Чтобы установить связь между таблицами необходимо выделить в окне Схема данных поле в одной из таблиц БД и с помощью мыши «перетащить» его изображение на поле в другой таблице БД и затем отпустить кнопку мыши. При этом появится диалоговое окно Изменение связей, в котором для обеих таблиц должно быть указано поле, по которому устанавливается связь. Причем при установлении связи между двумя таблицами одна из таблиц всегда является «главной», а другая «подчиненной». «Главной» становится та таблица, из которой вы перетаскивали поле, «подчиненной» — та таблица, куда вы его перетаскивали. Одна и та же таблица может выступать в одной связи как главная, а в другой – как подчиненная. Может быть, как несколько подчиненных таблиц у одной таблицы, так и несколько главных таблиц для одной подчиненной. Стоит подчеркнуть, что связь между таблицами может быть установлена для полей имеющих одинаковые записи, типы данных, длины полей и значения. При этом очень важно правильно понимать, в чем заключается разница между «главной» и «подчиненной» таблицами. С точки, зрения сопоставления и поиска данных из двух таблиц никакой разницы нет – вы можете отыскивать как информацию из главной таблицы, опираясь на данные подчиненной таблицы, так и наоборот, отыскивать информацию в подчиненной, опираясь на информацию из главной. Различие состоит только в том, как система управления данными будет обеспечивать целостность данных при изменении значений в связующих полях или при удалении записей из связанных таблиц. Как правило, хотя бы в одной таблице связующее поле является первичным ключом и однозначно определяет запись в этой таблице. Такая таблица и является кандидатом в «главные». Если во второй таблице связующее поле не является однозначно характеризующим запись полем, то эта таблица не может быть главной, а может выступать только в качестве подчиненной. Рассмотрим пример базы данных «Клиенты и заказы». В этом примере таблица заказов не может быть главной, поскольку поле связи «Код заказчика» может содержать повторяющуюся информацию – ведь клиент может сделать несколько заказов. Главной должна быть таблица клиентов. Если в этой базе есть еще, например, и таблица товаров, при этом таблицы товаров и заказов будут связаны, скажем, полем «Код товара», то для этой связи главной таблицей станет таблица товаров. В такой базе данных из трех таблиц с двумя связями будут два «начальника» над одним «подчиненным». Если вы хотите, чтобы Access поддерживал целостность связей между двумя таблицами (связь между таблицами будет сохранена и после закрытия СУБД Access), установите флажок «Обеспечение целостности данных». Если установлен флажок Обеспечение целостности данных, то в окне Изменение связей автоматически становятся доступны еще два флажка, связанных с обеспечением целостности данных: «каскадное обновление связанных полей» и «каскадное удаление связанных записей». Установите оба этих флажка. В этом случае Access позволит производить изменения и удаление записей данных главной таблицы. Одновременно будут изменены (или удалены) связанные с ними записи подчиненной рабочей таблицы. Это означает, что правила целостности, будут сохранены даже при изменении значений в связующих полях. Так, например, если рассмотреть пример с БД «Студенты» то установление флажка «Обеспечение целостности данных» приведет к тому, что после этого в таблицу Успеваемость невозможно будет ввести запись с таким значением поля КодСтудента, для которого нельзя будет найти соответствующую запись в таблице Студенты. Флажок «каскадное обновление связанных полей». При изменении значения ключевого поля в "главной" таблице (Студенты) автоматически изменяются значения связанного поля для соответствующих, записей в «подчиненной» таблице (Успеваемость). В рассматриваемом случае ключевое поле КодСтудента является счетчиком, следовательно, значения этого поля не могут быть изменены пользователем. Поэтому нет необходимости устанавливать данный флажок. Флажок «каскадное удаление связанных записей». При удалении записи из «главной» таблицы (Студенты) автоматически удаляются те записи из «подчиненной» таблицы (Успеваемость), для которых значение поля КодСтудента совпадает со значением в удаленной записи из таблицы Студенты. Так как в таблице Успеваемость не нужно хранить оценки несуществующих студентов, то флажок «каскадное удаление связанных записей» следует установить. После того как выбраны поля для установления связи между таблицами, в окне Изменение связей необходимо нажать кнопку «Создать», после чего на схеме данных в виде линии будет отображена созданная связь. Чтобы изменить установленную связь, необходимо выделить соответствующую линию, щелкнув по ней мышью. После этого связь можно удалить командой «Правка» – «Удалить» или с помощью клавиши Delete, а также изменить, вызвав окно «Изменение связи» командой «Связи» – «Изменить связь» или двойным щелчком на линии связи. Полученную схему данных следует сохранить. Для этого нужно закрыть окно «Схемаданных» и ответить утвердительно на вопрос о сохранении схемы данных в системном сообщении об изменении макета. Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.004 сек.) |