Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
БД_ЛР.doc
Скачиваний:
10
Добавлен:
09.02.2015
Размер:
3.1 Mб
Скачать

Порядок выполнения работы.

Запустите MS Access . Выберите строку ФайлОткрыть... и укажите имя БД teach. Выберите таблицу PR_DIS в списке таблиц и перейдите в режим таблицы. Обратите внимание на порядок строк в таблице.

  1. Сортировка таблицы.

  • Выполните сортировку таблицы по полю Ф.И.О., для этого:

  • Щелкните в любом месте столбца FIO;

  • Щелкните на панели инструментов по пиктограмме Сортировка по возрастанию.

  • Выполните сортировку таблицы по нескольким полям одновременно: сначала по полю Факультет, затем при равенстве значений поля Факультет по полю Ф.И.О. , и наконец, по полю Дисциплина. По каждому из полей данные должны быть отсортированы в алфавитном порядке. Сортировка по нескольким полям выполните двумя способами: сначала с помощью расширенного фильтра, а затем с помощью щелчка по пиктограмме сортировки по возрастанию.

  • Выполните команду ЗаписиФильтрРасширенный фильтр.

  • В появившемся диалоговом окне откройте список полей в первой ячейке строки Поле и выберите FAK или перетащите поле FAK из списка полей таблицы в первую ячейку строки Поле.

  • В этом же столбце щелкните строкой ниже и установите для сортировки по первому полю порядок по возрастанию.

  • Добавьте поле FIO, а затем поле DIS в следующие столбцы бланка фильтра, задавая для каждого из них порядок по возрастанию.

  • Сохраните фильтр как запрос, выполнив команду ФайлСохранитькак запрос, имя запроса Запрос1, предлагаемое по умолчанию, можно не менять.

  • Выполните команду ФильтрПрименить фильтри убедитесь в правильности полученного результата.

  • Удалите фильтр, выполнив команду ФильтрУдалить фильтр. Обратите внимание на то, что порядок строк таблицы вернулся к варианту, предшествовавшему применению фильтра.

  • Перетащите столбцы таблицы таким образом, чтобы поля FAK, FIO и DIS следовали друг за другом в указанном порядке.

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

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

  • Выполните команду ЗаписиФильтрРасширенный фильтр.

  • В бланк фильтра добавьте новые поля Nagr и Categ. Сортировка по ним не нужна.

  • В бланке фильтра в строке Условие отбора для столбца Nagr введите значение >700, а для столбца Categ - “доцент”.

  • Сохраните фильтр командой ФайлСохранить как запрос. Предлагаемое для нового запроса имя Запрос2 менять не надо.

  • Выполните команду ФильтрПрименить фильтри убедитесь в том, что результатом являются 2 записи о доцентах Матвееве и Соколовой.

  • Вернитесь к первоначальному варианту фильтра, для этого, находясь в окне БД, щелкните по корешку Запросы и откройте Запрос1. Убедитесь, что результатом применения этого фильтра будет вся таблица, упорядоченная сначала по названию факультетов, а затем для строк , у которых названия факультетов совпадают, по Ф.И.О. преподавателей, работающих на факультете. Третий уровень сортировки – это сортировка для каждого преподавателя по кодам дисциплин, которые он преподает.

  1. Индексация.

  • Создание простого индекса, содержащего только одно поле, например, поле FIO.

  • Откройте таблицу в режиме конструктора и выберите поле FIO.

  • Выберите среди его свойств строку "Индексированное поле" и выберите из развернувшегося списка значение “ДА [Допускаются совпадения]”.

  • Установите такие же индексы по полю Nagr и по полю FAK.

  • Сохраните определение таблицы, чтобы сохранить созданные индексы.

  • Создание составного индекса.

  • В режиме конструктора выполните команду ВидИндексы.

  • В окне Индексы в пустую строку столбца Индекс введите имя составного индекса FakDis, а в столбец Имя поля последовательно введите имена полей составного индекса: сначала FAK, а в следующей строке DIS.

  • Против каждого поля в столбце Порядок сортировки укажите По возрастанию.

  • В области "Свойства индекса" укажите, что индекс не является уникальным и пустые поля пропускать не надо.

  • Закройте окно индексов и сохраните определение таблицы.

  1. Поиск по образцу.

Пусть надо найти всех преподавателей, работающих на ФАВТ.

  • Выделите столбец Факультет или установите курсор в одну из ячеек этого столбца.

  • Выполните команду ПравкаНайти.

  • В окне поиска задайте Образец поиска - ФАВТ.

  • В списке Совпадение выберите Поля целиком.

  • Установите индикатор С учетом регистраи для Access 97 индикаторТолько в текущем поле. В Access 2000 вместо установки последнего индикатора надо убедиться в правильности установки, выбранной из спискаПоиск в. Если установлено не то поле, в котором вы собираетесь искать заданное в образце значение, это означает, что курсор в таблице указывает на другое поле. В этом случае надо закрыть окно поиска, вернуться к открытой таблице и установите курсор в одну из ячеек нужного столбца.

  • Щелкните по кнопке Найти (Access 97) или Найти далее (Access 2000). Первая от начала таблицы запись со значением ФАВТ в поле Факультет будет маркирована.

  • Для поиска следующей записи с тем же значением в поле Факультет щелкните по кнопке Найти далее.

  1. Поиск по нескольким полям.

Если надо найти все записи о доцентах и ассистентах кандидатах наук, работающих на ФАВТ, то потребуется применение фильтра.

  • Откройте таблицу PR_DIS, а затем окно фильтра, выполнив команду ЗаписиФильтрРасширенный фильтр.

  • Установите порядок сортировки по возрастанию значения в поле Ф.И.О.

  • В строке Условие отбора введите для поля Categ значение “доцент” or “асс.к.н.” и для поля FAK значение ФАВТ.

  • Выполните команду ФильтрПрименить фильтр, чтобы увидеть результат из 4-х записей.

  • Поменяйте в строке Условие отбора для поля FAK значение ФАВТ на ЭФФ. Результат должен содержать 2 записи.