Главная страница
Навигация по странице:

  • Тема: Практическое занятие №8 Создание ключевых полей. Задание индексов. Установление и удаление связей между таблицами. Теоретический материал

  • математика. 01 - 13.01 - И2С Основы проектирования БД Милушкин А.В. Практическое занятие 8 Создание ключевых полей. Задание индексов. Установление и удаление связей между таблицами


    Скачать 18.86 Kb.
    НазваниеПрактическое занятие 8 Создание ключевых полей. Задание индексов. Установление и удаление связей между таблицами
    Анкорматематика
    Дата20.01.2022
    Размер18.86 Kb.
    Формат файлаdocx
    Имя файла01 - 13.01 - И2С Основы проектирования БД Милушкин А.В.docx
    ТипЗанятие
    #337300

    Дата: 13.01.2022

    Группа: И2С Основы проектирования баз данных

    Тема: Практическое занятие №8 Создание ключевых полей. Задание индексов. Установление и удаление связей между таблицами.

    Теоретический материал

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

    Для Access обязательным является определение ключевого поля для таблицы. Для его определения достаточно выделить поле и выбрать команду Ключевое поле меню Правка. Если требуется определить составной ключ, но необходимо выделить требуемые поля при нажатой клавише Ctrl, а затем выбрать команду Ключевое поле. При определении ключевого поля автоматически создается уникальный индекс, определяющий физический порядок записей в таблице. Этот индекс является первичным индексом для таблицы и имеет зарезервированное имя Primary Key. Для составных ключей существенным может оказаться порядок образующих ключ полей, так как упорядочение записей будет проводиться вначале по первому полю, затем по второму и т.д. Для внешних полей при создании связи также происходит автоматическое создание индекса (в данном случае вторичного).

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

    Для определения ссылочной целостности данных следует установить опцию Обеспечение целостности данных (Enforce Referential Integrity). Дополнительно можно установить каскадное удаление и обновление записей. Каскадное обновление позволяет вам при замене значения ключа со стороны 1 поменять его во всех связанных с ним таблицах со стороны ∞. Каскадное удаление позволяет удалить все записи со стороны ∞ при удалении записи со стороны 1.

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

    После определения таблиц и установления связей между ними можно приступить к вводу записей в таблицы. При редактировании доступными являются поля только текущей записи, поэтому необходимо всегда помнить о том, что вначале надо перейти к желаемой записи (найти ее), а только потом редактировать. Если необходимо обновить сразу группу записей, то для этого следует воспользоваться запросами действий. В левой части таблицы имеется селекторный столбец, содержащий индикаторы состояния записи. Треугольник означает, что запись является текущей. При редактировании записи треугольник сменяется на карандаш. В распределенных базах данных Access блокирует редактируемую запись до ее сохранения. В остальных БД эта строка отображается в виде перечеркнутого круга. И, наконец, звездочка означает пустую строку в конце таблицы, которую можно использовать для создания новой записи. Эта запись присутствует всегда, если в данной таблице разрешено добавление записей.

    В процессе добавления новых записей курсор автоматически перемещается в следующую строку. Введенная запись сохраняется автоматически, как только ее покидает курсор, т.е. для сохранения записи достаточно просто перейти на соседнюю. Это позволяет избежать промежуточного сохранения таблицы и при любом сбое будет потеряна только редактируемая запись. Сохранить принудительно запись можно, нажав Shift+Enter в любом месте записи либо просто Enter в конце записи. Отменить сделанные изменения или вставку новой записи можно нажатием клавиши Esc. Переход по полям от первого к последнему в записи и далее в начало следующей записи производится с помощью клавиши Tab.

    Для облегчения ввода новых записей Access предоставляет несколько «горячих» комбинаций клавишей:

    Ctrl + ; вводит текущую дату

    Ctrl + : вводит текущее время

    Ctrl + Alt + Space вводит значение поля, установленного по умолчанию

    Ctrl + ’ вводит значение того же поля из предыдущей записи

    Ctrl + Enter вставляет символ “возврат каретки” в поле Мемо либо в текстовое поле

    Ctrl + + добавляет новую запись

    Ctrl + - удаляет текущую запись.

    Если в таблицу необходимо встроить объект из другого приложения, поддерживающего OLE интерфейс, следует обратиться к команде Объект меню Вставка. Эта команда будет доступна в том случае, если курсор будет находиться в этом поле и полю будет присвоен тип Поле объекта OLE. При этом имеется возможность, выбрав объект, запустить связанную с ним родительскую программу и провести изменения в объекте. Помимо встраивания объекта имеется также возможность установить просто связь таблицы с некоторым объектом, отметив в соответствующем диалоговым окне флажок Связь. Кроме внедрения и установления связей с объектом можно вставить в таблицу простую копию объекта, никак не связанную с оригиналом. Для этого необходимо воспользоваться командой Специальная вставка.

    Старшие версии Access имеют расширенные средства копирования и импорта данных из сторонних источников информации: БД других форматов, текст, электронные таблицы, HTML и XML документы и т.д. Кроме импорта Access позволяет также присоединять таблицы из других БД, находящихся даже на удаленных компьютерах. Оба приложения могут работать с такой таблицей одновременно. Для Access присоединение таблиц – это единственный способ создания распределенной БД, работающей в режиме «файл-сервер» с реализацией полноценного многопользовательского доступа к одним и тем же данным. При присоединении таблицы ее структура и данные не копируются, в Access хранится лишь информация о связи. С присоединенной таблицей можно работать точно так же, как и со своей таблицей. Ограничением является запрет на изменение ее структуры, хотя можно менять название таблицы (задать псевдоним присоединенной таблицы) и ряд свойств полей, определяющих способ ввода и отображения данных в Access.

    Для поиска информации в таблице можно воспользоваться командой Поиск, а также применить сортировку и фильтрацию. Команда Поиск позволяет искать как в определенном поле, так и по всем полям сразу. Сортировку в Access можно производить по всем полям (кроме Объект OLE) независимо от того, был ли определен заранее соответствующий индекс. Фильтр является логическим выражением. Вывод тех записей таблицы, которые не удовлетворяют этому условию, подавляется, хотя доступ к ним через запросы, макросы или программы сохраняется. Синтаксис записи условия фильтра подобен синтаксису определения условия на значение, кроме необходимости явного определения имен полей, по которым производится фильтрация. Объединяя такие условия с помощью логических операций, можно создавать сложные фильтры. Фактически, фильтр – это условие отбора в запросах SQL, т.е. та его часть, которая записывается после оператора WHERE. Фильтры в Access бывают четырех типов:

    1. Фильтр по выделенному (Filter by Selection). Для его применения достаточно выделить содержимое некоторого поля, или даже его часть, и вызвать соответствующую команду. Производит фильтрацию только по одному полю, сравнивая значения данного поля всех записей с выделенной. Допустимо также исключить выделенное (в старших версиях Access);

    2. Фильтр для (Filter for). Применение его подобно предыдущему, только отсутствует необходимость вначале искать и выделять требуемое значение фильтрации. Достаточно просто ввести условие и применить команду (доступно через локальное меню). Также производит фильтрацию только по одному полю;

    3. Фильтр по форме (Filter by Form). Позволяет визуально создавать сложные фильтры, состоящие из нескольких условий, объединенных логическими операциями AND или OR. Производит фильтрацию по нескольким полям одновременно;

    4. Расширенный фильтр (Advanced Filter). Позволяет визуально создавать фильтры произвольной сложности. Для его создания применяется язык QBE, который будет рассмотрен в следующем параграфе.

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


    написать администратору сайта