Access формы режим таблицы сортировка не активна. Сортировка данных. Сортировка по одному полю

В отчете допускается сортировка по 10 и менее полям или выражениям.

    Нажмите кнопку Сортировка и в раскрывшемся списке поле задайте поле, для которого будет выполнена сортировка.

    Чтобы обеспечить сортировку записей внутри отсортированной группы записей добавьте еще один уровень сортировки, как это описано выше.

Поле или выражение, указанное в первой строке, определяет первый (основной) уровень сортировки. Вторая строка бланка определяет второй уровень сортировки и т.д.

При сортировке по возрастанию значения сортируются в порядке от «А» до «Я» и от 0 до 9.

Для изменения порядка сортировки выберите пункт "Начиная с Z" для текстовых полей или "От максимального к минимальному" для числовых полей. При сортировке по убыванию значения сортируются в порядке от «Я» до «А» и от 9 до 0.

  1. Группировка записей в отчете

В отчетах допускается группировка по 10 и менее полям или выражениям. Группировка может быть выполнена на этапе создания отчета. Для группировки записей в созданном отчете:

    Откройте отчет в режиме конструктора.

    Нажмите ПКМ и в контекстном меню выберите пункт Сортировка и группировка, чтобы открыть окно Группировка, сортировка и итоги.

    Нажмите кнопку Группировка и выберите поле или выражение, для которого задаются параметры группировки в отчете.

    Задайте направление группировки, например "От минимального к максимальному".

    Добавьте общие и промежуточные итоги для двух – трех полей отчета. Для этого в строке группировка раскройте список Больше и в нем выберите пункт С итогами. На рис. 4.1 показан в режиме Конструктор отчет с группировкой спортсменов по весу. В Отчет добавлены промежуточные итоги по группе (сумма ростов спортсменов с определенным весом) и общий итог (сумма ростов всех спортсменов).

Рис. 4.1. Отчет с группировкой спортсменов по весу в режиме Конструктор.

Рассмотрим параметры группировки, приведенные на рис. 4.1:

    ·"От минимального к максимальному" определяет способ группировки значений. Список доступных значений этого свойства зависит от типа данных поля, по которому проводится группировка.

    ·"По всему значению" определяет любой допустимый интервал значений поля или выражения, по которому проводится группировка.

    ··"С разделами примечания". Добавляет или удаляет область примечаний группы, определяемой полем или выражением.

    "Не удерживать группу на одной странице". Задает или отменяет обязательную печать группы на одной странице.

  1. Создание вычисляемого элемента управления

    Откройте отчет в режиме Конструктор.

    Добавьте в область данных отчета элемент управления Поле, как это описано в лабораторной работе №2 (см. рис. 4.2).

    Вызовите окно свойств поля и на вкладке Данные в строке Данные вызовите Построитель выражений (нажмите кнопку с тремя точками).

    В Построителе задайте поля и операции над ними (например, расчет удельной площади или относительной зарплаты и т.п.).

    Удалите надпись созданного поля в области данных и в верхнем колонтитуле отчета задайте наименование вычисляемого поля.

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

Рис. 4.2. Использование Построителя выражений для создания вычисляемого поля в режиме Конструктор.

GardenCo

Сортировка данных

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

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

В этом упражнении вы воспользуетесь различными способами сортировки данных в таблице и форме. В качестве рабочей будет использоваться папка Office XP SBS\Access\Chap12\Sort . Выполните следующие шаги.

1. Откройте базу данных GardenCo, расположенную в рабочей папке.

2. Откройте таблицу Клиенты в режиме таблицы.

3. Чтобы отсортировать таблицу по полю Штат, щелкните в любом месте столбца Штат, а затем щелкните на кнопке . Записи будут упорядочены по регионам.

Совет . Можно также воспользоваться командами Сортировка по возрастанию (Sort Ascending) и в меню Записи (Records) или щелкнуть правой кнопкой мыши на столбце, а затем щелкнуть на нужной команде в контекстном меню.

4. Чтобы изменить порядок сортировки на обратный (при условии, что курсор все еще находится в столбце Штат ), щелкните на кнопке Сортировка по убыванию (Sort Descending) . Записи для штата Орегон находятся теперь в начале списка. В обоих случаях сортировка осуществлялась по алфавиту, но данные в поле Город располагаются беспорядочно. Очевидно, что список выиграет, если упорядочить города внутри регионов.

Хотя суть сортировки кажется вполне очевидной, для компьютера все не так просто. В Access цифровые данные могут трактоваться и как числа, и как текст. Поля, содержащие, помимо цифр, пробелы, тире или знаки препинания (как, например, в почтовом индексе или телефонных номерах), трактуются как текстовые. В отличие от них поля, содержащие такие данные, как цена или количество, считаются числовыми. При сортировке текстовых полей, все записи упорядочиваются вначале по первому символу, затем по второму и так далее - вплоть до последнего. Сортировка числовых данных осуществляется по их значениям в порядке возрастания или убывания. Такой подход может привести к неожиданным результатам. В следующей таблице представлены результаты сортировки первого столбца в зависимости от того, является его содержимое текстовым или числовым.

Чтобы отсортировать текстовое поле, содержащее цифры, в порядке возрастания или убывания значений, нужно дополнить их ведущими нулями до одинаковой длины. Например, данные 001, 011, 101 будут отсортированы правильно, даже если они определены как текстовые.

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

5. Чтобы разместить столбец Штат слева от поля Город , щелкните на заголовке столбца и перетащите его влево, пока между полями Адрес и Город не появится темная линия.

6. Так как столбец Штат уже выделен, нажмите на клавишу (Shift) и щелкните в заголовке столбца Город , чтобы распространить выделение на оба столбца.

7. Щелкните на кнопке Сортировка по возрастанию (Sort Ascending) , чтобы упорядочить записи по регионам и городам в порядке возрастания (города будут отсортированы внутри регионов).

Совет . Просматривая записи в режиме формы, их можно отсортировать, но только по одному полю. Для этого щелкните в нужном поле, а затем щелкните на одной из кнопок Сортировка (Sort) .

8. Хотя порядок столбцов в таблице Клиенты не имеет особого значения, все же верните столбец Штат на прежнее место.

9. Сохраните и закройте таблицу Клиенты .

10. Закройте базу данных.

Отчет Access, который вы сконструировали в двух предыдущих упражнениях, имеет еще один существенный недостаток. Фамилии людей из списка Контакты выводятся не по алфавиту. Мастер отчетов автоматически сгруппировал данные таблицы Список по их принадлежности к тем или иным записям таблицы Контакты, которая определяется связью между полями Код_Контакты этих двух таблиц. По указанной причине фамилии в отчете упорядочены по возрастанию числового параметра Код_Контакты - идентификатора записей таблицы Контакты. Это неудобно, в отчетах с большим числом записей при такой сортировке будет довольно трудно отыскать нужного человека. Есть смысл изменить порядок сортировки, для этого выполните следующие шаги.

1.Щелкните на кнопке Отчеты окна базы данных Access.

2. Выделите значок отчета Список контактов.

3. Щелчком на кнопке Конструктор панели инструментов окна базы данных откройте отчет в режиме конструктора.

4. Щелкните на кнопке Сортировка и группировка панели инструментов, чтобы открыть окно диалога, показанное на рис. 18.19.

Рис. 18.19. Сортировка и группировка данных в отчете Access

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

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

5. Щелкните в третьей строке на кнопке раскрывающегося списка Поле/выражение .

6. Выберите пункт Фамилия.

7. В раскрывающемся списке Поле/выражение четвертой строки окна Сортировка и группировка выберите пункт Имя .

Примечание При добавлении нового поля сортировки Access автоматически назначает ему порядок сортировки По возрастанию. Чтобы реализовать обратный порядок записей, выберите в раскрывающемся списке ячейки Порядок сортировки соответствующей строки пункт По убыванию .

8. Щелчком на кнопке строки Фамилия выделите ее.

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

10. Повторяя шаги 8 и 9, разместите строку Имя между строками Фамилия и Код_Контакты, как показано на рис. 18.20.

Рис. 18.20. Добавление полей сортировки данных в отчете Access

11. Закройте окно Сортировка и группировка.

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

12. Щелкните на кнопке Вид панели инструментов , чтобы вывести отчет в режиме предварительного просмотра.

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

Рис. 18.21. Окончательный вид отчета Access

13. Закройте отчет Access.

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

При поиске некоторого значения Access находит и отображает соответствующую запись Но если заданному критерию удовлетворяет несколько записей, то для удобства работы возникает необходимость отобразить на экране только их С помощью кнопок сортировки и фильтрации, находящихся на панели инструментов (или команд Фильтр (Filter) и Сортировка (Sort) из меню Записи (Records)), можно отобразить на экране только необходимые для работы записи, а также быстро отсортировать их в нужном порядке Для сортировки всей таблицы используются две кнопки сортировки, а для выбора определенных записей - три кнопки фильтрации

Быстрая сортировка

Иногда необходимо отсортировать записи в определенной последовательности Кнопки сортировки панели инструментов позволяют сортировать столбцы по возрастанию или по убыванию Сначала выберите поля для сортировки, а затем щелкните на кнопке Сортировка по возрастанию (А-Я) (Sort Ascending (A-Z)) или Сортировка по убыванию (Я-А) (Sort Descending (Z-A))

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

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

Чтобы восстановить первоначальный порядок расположения записей, воспользуйтесь командой Записи^Удалить фильтр (Records^Remove Filter/Sort)

Фильтрация

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

5. Создание запросов в среде ms Access

Процесса проектирования запроса с помощью стандартной панели инструментов окна запроса в режиме Конструктора .

Запросы

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

При создании таблицы с помощью MS Access можно заметить, что программа не разрешает использовать вычисляемые поля. Не существует также возможности выполнить сортировку не по первичному ключу.

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

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

Для некоторых запросов можно внести изменения в результат запроса, отображаемый в режиме таблицы. Эти изменения отразятся и в исходных таблицах. На основании запроса можно разработать форму или отчет.

Сортировка записей таблицы

В таблице данные всегда отсортированы по первичному ключу. Чтобы организовать другой способ сортировки данных, используется запрос. Для создания такого запроса в окне базы данных следует выбрать пиктограммуТАБЛИЦА” и указать таблицу, которую необходимо отсортировать. Выбор пиктограммыНОВЫЙ ЗАПРОС”, расположенной на панели инструментов, приводит к открытию диалогового окна для создания нового запроса для указанной в окне базы данных таблице. В результате выбора пиктограммыНОВЫЙ ЗАПРОС” в диалоговом окне отображается список всех имен полей исходной таблицы, в начале которого расположен символ " * ". Отбуксируйте звездочку в бланк запроса QBE. Она является символом-заменителем всех полей данных. Кроме того, отбуксируйте в бланк запроса то поле данных, по которому должна быть проведена сортировка.

Для этого поля из списка "Сортировка" выберите способ сортировки. Выберите пиктограмму “ВЫПОЛНИТЬ”и MS Access отобразит на экране результат запроса, отображаемый в режиме таблицы, данные в котором отсортированы требуемым образом.

Запросы с критериями поиска

Для выборки данных из таблиц по определенному условию в MS Access используются запросы с критериями поиска. Предварительно задав условие отбора, результатом выполнения запроса будет набор данных удовлетворяющих сформированному критерию.

Для составления запроса следует перейти в окно базы данных, выбрать пиктограмму “ЗАПРОС” и нажать кнопку "Создать", а затем кнопку "Новый запрос". В следующем окне диалога следует выбрать одну из таблиц БД и нажать кнопку "Добавить", MS Access поместит в окно запроса список полей указанной таблицы. Теперь можно выбрать одно или несколько полей и отбуксировать их в бланк запроса QBE.

Встроке"Условие отбора" можно ввести теперь критерии выбора. Для обозначения произвольного количества символов используйте в качестве символа-заменителя звездочку (*), а для обозначения одного произвольного символа знак вопроса (?). Сформулируйте критерии запроса. Например, если для текстового поля будет задан только критерий "А*", то в результате выполнения запроса будут отображены только те записи, текстовое поле которых начинается с буквы "А" (или "а").

Если требуется отыскать комбинацию нескольких значений, необходимо ввести их в строку "Условие отбора", употребляя в качестве разделителя логические операторы AND и OR. Кроме обычных операторов сравнения, MS Access предоставляет три специальных оператора, полезных для отбора данных: BETWEEN, IN, LIKE.

Запросы с параметрами

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

Чтобы установить параметр необходимо ввести в строку "Условие отбора" имя или фразу, заключенную в квадратные скобки (). То, что заключено внутри квадратных скобок, MS Access рассматривает как имя параметра. Это имя выводится в диалоговом окне при выполнении запроса, поэтому разумно в качестве имени параметра использовать содержательную фразу. В одном запросе можно задать несколько параметров; при этом имя каждого параметра должно быть уникальным и информативным.

По умолчанию MS Access преобразует введенные в запрос параметры в текстовый тип данных. Однако, так как текстовые поля нельзя сравнивать с полями дат, тип данных для параметров необходимо установить точно. Для этого выберите команду Запрос/Параметры из меню, в результате чего MS Access откроет окно диалога "Параметры запроса". Введите параметр без квадратных скобок в диалоговое окно и выберите необходимый тип данных.

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

Вычисляемые поля в запросах

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

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

Выражение 1: [Поле1] “оператор” [Поле2]

В квадратные скобки заключаются только имена полей. MS Access автоматически использует "Выражение 1" в качестве имени вычисленного выражения. Это имя можно изменить на более содержательное.

При построении сложных выражений MS Access предлагает использовать утилиту, называемую “Построитель выражений”. Для перехода в “Построитель выражений” необходимо щелкнуть по пустому полю в бланке QBE, а затем – по кнопке “Построить” панели инструментов.

Итоговые запросы

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

Для того чтобы составить итоговый запрос, находясь в режиме Конструктора запроса , следует выбрать пиктограмму “ГРУППОВЫЕ ОПЕРАЦИИ” или воспользоваться командой Вид/Групповые операции . В результате чего в бланке запроса появится строка "Групповая операция". Затем для соответствующего поля из списка необходимо выбрать функцию "Группировка".

Многотабличные запросы

Рассмотрев возможности запросов, основанных на одной таблице, легко организовать просмотр объединенных данных из нескольких связанных таблиц. Выбор данных из нескольких таблиц особенно полезно использовать при создании форм и отчетов.

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

Далее необходимо определить параметры связи. Укажите на соединительную линию и выберите команду Вид/Параметры объединения . В результате откроется диалоговое окно, в котором предлагаются три опции для определения параметров связи.

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

Примечание: Поля главной таблицы при отношении “один-ко-многим” нельзя изменить в результате запроса, отображаемого в режиме таблицы. Кроме того, эти поля могут содержать повторяющиеся значения.

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

Перекрестные запросы

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

Представьте себе таблицу товаров, которая содержит три поля данных: "Тип", "Поставщик" и "Цена". Для каждой категории товаров требуется определить суммы цен товаров с указанием поставщика.

Поместите в окно Конструктора запроса таблицу "Товары". Затем включите строку "Групповая операция", выбрав команду Вид/Групповые операции . После этого отбуксируйте поле данных"Тип" в бланк запроса. Для этого поля выберите из списка значение "Группировка".

Во второй столбец бланка запроса отбуксируйте поле данных "Поставщик". Для этого столбца также выберите значение "Группировка".

Последним в бланк запроса отбуксируйте поле "Цена". Для этого поля выберите значение "Sum".

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

Теперь необходимо итоговый запрос преобразовать в перекрестный запрос. Для этого выберите команду Запрос/Перекрестный .

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

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

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

Примечание: При создании перекрестной таблицы вы можете выбрать только одно поле в качестве содержимого таблицы и только одно поле в качестве заголовка столбцов. В качестве заголовков строк можно указать и несколько полей исходной таблицы.

Запросы на удаление

Все выше перечисленные запросы относятся к запросам-выбора, которые позволяют только выбирать и просматривать данные из таблиц. Следующие запросы являются запросами-действия, позволяющие модифицировать хранимую информацию.

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

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

Лишь в том случае, если в результате запроса присутствуют только подлежащие удалению записи, следует преобразовать запрос-выбора в запрос на удаление.

Для этого в строке меню выберите команду Запрос/Удаление . После этого MS Access выключает в бланке запроса строки "Сортировка"и"Вывод на экран". Для запросов на удаление эти строки не нужны. Кроме того, для всех колонок бланка запроса в новой строке"Удаление" отображается текст "Условие". Однако критерии при этом не изменяются.

Если выполнить запрос выбором пиктограммы “ВЫПОЛНИТЬ”, MS Access не отобразит на экране результат выполнения запроса. Вместо него появится сообщение о том, сколько записей будет удалено в исходной таблице. Вы можете прервать процесс удаления нажатием кнопки "Отмена". Однако нажатие OK приводит к безвозвратному удалению записей, удовлетворяющих критериям запроса.

Запросы-обновления

Запрос-обновления позволяет производить обновление некоторой хранимой информации, своевременность которой истекла на текущий момент.

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

Сортировка, поиск и фильтрация данных

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

Операция сортировки данных используется всегда для удобства нахождения нужной информации. Когда на экране (или на бумаге) отображается таблица, гораздо легче найти нужную строку, если эти строки упорядочены. Вы привыкли к тому, что табличные данные упорядочены по алфавиту, по дате, по увеличению или уменьшению значений в столбцах, содержащих числа. Но в разных ситуациях мы хотели бы сортировать строки по разным признакам (столбцам таблицы). В идеале это должно выполняться легким движением руки. Именно так и позволяет делать Access. По умолчанию, когда таблица открывается в режиме Таблицы, она упорядочивается по значению ключевого поля. Если ключевое поле для таблицы не определено, записи выводятся в порядке их ввода в таблицу. Если нужно отсортировать записи по значению другого поля, достаточно установить курсор на любую строку соответствующего столбца и нажать одну из кнопок на панели инструментов:Сортировка по возрастанию (Sort Ascending) или Сортировка по убыванию (Sort Descending).

Другой способ выполнения этой операции: щелкнуть правой кнопкой мыши по любой строке нужного столбца и выбрать из контекстного меню (рис. 1) соответствующую команду.

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

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

· При сортировке в возрастающем порядке записи, содержащие пустые поля (с пустыми значениями), указываются в списке первыми.

· Числа, находящиеся в текстовых полях, сортируются как строки символов, а не как числовые значения. Если нужно отсортировать их в числовом порядке, все текстовые строки должны содержать одинаковое количество символов. Если строка содержит меньшее количество символов, то сначала нужно вставить незначащие нули.

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

Рис. 1.

Замечание

Порядок сортировки зависит от настроек языка, определенных в диалоговом окне Параметры (Options) при создании базы данных. Чтобы изменить эту настройку, необходимо выбрать в меню Сервис (Tools) команду Параметры (Options), открыть вкладку Общие (General) и в поле Порядок сортировки базы данных(New database sort order) выбрать нужный язык.

Если вы изменили порядок сортировки записей в таблице, а потом решили ее закрыть, Access запрашивает, хотите ли вы сохранить изменения макета. Если вы ответите Да(Yes), то новый порядок сортировки сохранится и воспроизведется, когда таблица будет открыта в следующий раз. Для того чтобы вернуться к первоначальному порядку сортировки (по значению ключевого поля), необходимо выполнить команду меню Записи, Удалить фильтр (Records, Remove Filter/Sort).

Иногда нужно выполнить сортировку по значению нескольких полей. Для этого переместите сначала сортируемые столбцы таким образом, чтобы они оказались, во-первых, рядом, а во-вторых, с учетом приоритетов, - приоритеты устанавливаются слева направо, т. к. первыми будут сортироваться значения в крайнем левом столбце. После этого нужно выделить все столбцы и нажать, соответственно, кнопку Сортировка по возрастанию (Sort Ascending) или Сортировка по убыванию (Sort Descending) на панели инструментов.

Существует четыре способа, которые можно использовать для отбора записей в режиме таблицы или формы: фильтр по выделенному, фильтр по форме, фильтрации Ввода и Расширенный фильтр.

Фильтр по выделению

1. Запустите Microsoft Access, а затем откройте базу данных

2. В поле формы, подчиненной формы, таблицы или подтаблица, выберите один экземпляр значение, которое требуется отфильтровать по (Например, имя или номер).

3. На Записей Выберите пункт Фильтр, а затем нажмите кнопку Фильтр по выделению.

4. Повторите шаги 2 и 3, пока не будет иметь набор записей Вы ищете.

ПРИМЕЧАНИЕ: Можно также фильтровать записи, которые не имеют определенное значение. После выбора значения, щелкните правой кнопкой мыши и выберите команду Фильтр с исключением выделенного.

Фильтр по форме

1. Откройте форму в режиме формы или таблицы, запроса или формы в

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

2. На Записей Выберите пункт Фильтр, а затем нажмите кнопку Фильтр по форме Чтобы перейти в окно обычного фильтра.

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

1. Выберите поле для указания критерии.

2. Введите условие отбора, выбрав значение, которое вы Поиск в списке значений поля (если список содержит значения полей), или введите значение в поле.

3. Чтобы найти записи, в котором определенное поле имеет тип пустые или непустые, Имеет значение Null -или-Не пусто в поле.

4. Чтобы указать дополнительные значения, содержащие записи в фильтр, нажмите кнопку Или вкладки формы, подчиненной формы, таблицы или подтаблицы что фильтрации, а затем введите дополнительные условия.

5. На Фильтр меню, нажмите кнопку Применение фильтра чтобы просмотреть результаты фильтрации.

Фильтр для ввода данных

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

2. Щелкните правой кнопкой мыши в поле в форме, подчиненной форме, в режиме таблицы или подтаблицы фильтрации и введите значение что вы ищете Для фильтрации окно контекстного меню.

3. Нажмите клавишу ВВОД, чтобы применить фильтр, а затем закройте контекстное меню.

Расширенный фильтр

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

2. Щелкните в форме, подчиненной формы, таблицы, или подтаблица, который требуется отфильтровать.

3. На Записей Выберите пункт Фильтр, а затем нажмите кнопку Расширенный фильтр.

4. Добавьте поля, которые необходимо указать значения или другие критерии, которые будут использовать фильтр для поиска записей в структуре Сетка.

5. Чтобы указать порядок сортировки, щелкните Сортировка для поля в ячейке, нажмите кнопку со стрелкой и выберите порядок сортировки. Microsoft Access сначала выполняет сортировку крайнего левого поля в бланке запроса, а затем Сортировка следующее поле вправо и т. д.

6. В Условия для полей, которые включены, введите значение в ячейке, При поиске или введите выражение.

7. На Фильтр меню, нажмите кнопку Применение фильтра чтобы просмотреть результаты фильтрации.