Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






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






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

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

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

Проектирование перекрёстного запроса в режиме Конструктора

1) Указать необходимые таблицы в окне Добавить таблицу.

2) В запросный бланк вывести три поля для построения матрицы.

3) Указать тип запроса – Перекрёстный (кнопка - Ü). При этом в запросном бланке появляются новые строки – «Групповая операция» и «Перекрёстная таблица».

4) В первом столбце бланка указать поле, по которому будут группироваться записи и значения которого будут выводиться по строкам таблицы.

5) Указать в строке «Групповые операции» – Группировка; в строке «Перекрёстная таблица» - Заголовки строк.

6) Во втором столбце бланка следует указать поле, по которому значения будут выводиться по столбцам таблицы. Здесь также нужно задать Группировку и в строке «Перекрёстная таблица» -

- Заголовки столбцов.

7) В третьем столбце бланка нужно указать поле выводимых значений в таблицу. В строке «Перекрёстная таблица» нужно указать параметр Значение, а в строке «Групповые операции» - выбрать подходящую статистическую функцию (см. таблицу 1).

8) Запуск перекрёстного запроса происходит обычным образом.

Примеры перекрёстных запросов:

1) Вывести список продавцов и количество проданных ими товаров в двумерной (перекрёстной) таблице.

Выполнение:

- Добавить в запрос все три таблицы базы данных «Магазин».

- В запросный бланк вывести поля: ФИО продавца, Название товара и Количество продаж.

- Указать тип запроса – Перекрёстный.

- Заполнить запросный бланк, как показано на рис. 10.

 
 

 

 


Рис.10. Запросный бланк примера 1

 
 

 


Рис.11. Результат выполнения примера 1

G Примечание.

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

2) Дополнить задание примера 1 перекрёстного запроса подсчётом общего количества товаров, проданных каждым продавцом.

Выполнение:

- Добавить в запросный бланк примера 1 ещё одно поле Количество;

- Задать в строке «Групповые операции» этого поля функцию Sum; а в строке «Перекрёстная таблица» - Заголовки строк.

 
 

 


Рис.12. Результат выполнения примера 2

Мастер перекрёстного запроса –ещё один способ выполнения перекрёстного запроса – вызывается командой меню Создать. Далее:

1) выбрать в диалоговом окне Новый запрос Перекрёстный запрос.

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

3) В следующем окне указываются поля, которые будут определены в перекрёстной таблице в качестве строк.

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

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

6) В перекрёстной таблице можно произвести суммирование по каждой строке. В этом случае добавится итоговый столбец с суммами по каждой строке.

G Примечание. На основе данных перекрестного запроса можно строить диа­граммы, представленные в виде формы (см. Создание формы).

Запросы на изменение данных в таблицах

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

При проектировании сложных запросов следует быть более внимательными и для подстраховки рекомендуется выполнять эти запросы в два этапа:

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

2) Преобразовать запрос на выбор в запрос на изменение данных:

Тип запроса – Создание таблицы;

– Обновление;

– Добавление;

– Удаление;

Следует выбрать один из типов запросов.

5) Запрос на создание новой таблицы

Создание новой таблицыполезно,

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

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

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

Выполнение запроса на Создание новой таблицы:

- создать запрос в режиме Конструктора и включить в него все необходимые таблицы (если таблиц несколько, они должны иметь поля для связи);

- определить связи между таблицами, если они ещё не установлены;

- отредактировать запросный бланк: создать поля будущей таблицы, ввести при необходимости условия отбора и/или сортировки;

- просмотреть полученную таблицу, переключившись в Режим таблицы. Если результат удовлетворительный, вернуться в режим Конструктора и выбрать команду Тип запроса † Создание таблицы

- В появившемся окне ввести имя новой таблицы, выбрать нужный переключатель и нажать ОК.

- Выполнить запрос (!).

- Нажать кнопку Да в появившемся специальном диалого­вом окне.

Рис.13. Диалоговые окна

создания новой таблицы.

 

G Примечания.

1) При выполнении запроса на создание таблицы происходит копирование данных внутри одной базы данных или в другую базу данных.

2) Запрос на создание таблицы можно использовать неоднократно, причём двумя способами: с помощью запуска запроса в режиме Конструктора;

с помощью команды Тип запроса † Создание таблицы.

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

4) Можно запретить вывод диалогового окна, требующего подтверждения выполнения запроса (команда Сервис † Параметры † Правка и поиск † Подтверждение † запросов на изменение).

Пример. Создать общую таблицу учёта продаж магазина.

Выполнение:

- Добавить в запросный бланк все три таблицы базы данных «Магазин».

- Создать поля будущей таблицы: Дата продажи товара, ФИО продавца,

Название товара, Количество проданного товара, Цена товара, вычисляемое поле – Стоимость проданной партии товара.

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

- вернуться в режим Конструктора, выбрать команду:

- Тип запроса † Создание таблицы.

- В появившемся окне ввести имя новой таблицы - «Учёт», включить переключатель «в текущей базе данных» и нажать ОК.

- Выполнить запрос (!).

- Нажать кнопку Да в появившемся специальном диалого­вом окне.

6) Запрос на обновлениезаписей по условию

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

- Создать новый запрос выбора и проверить его корректность, перейдя в Режим Таблицы.

- Вернувшись в режим Конструктора, выбрать команду За­прос † Обновление (или Тип запроса † Обновление).

- В появившейся в бланке запроса строке «Обновление» в со­ответствующих столбцах задать новые значения полей таб­лицы.

- В качестве таковых могут выступать и вычисляемые значения.

- Выполнить запрос (!).

- Нажать кнопку Да в появившемся специальном диалоговом окне.

Пример. Изменить цену товара «Мышь» с 50 руб. на 100 руб.

Выполнение:

- В запросном бланке для таблицы «Товары» задать поля для условия отбора: Название: «Мышь» и «Цена»: 50.

- Выбрать из списка Тип запроса † Обновление.

- Ввести еще поле «Цена» и заполнить для него строку Обновление: 100.

- Запросный бланк для этого примера выглядит так:

- Кнопка Запуск (!) выполняет обновление.

- Нажать кнопку Да в появившемся специальном диалоговом окне.

- Просмотреть обновленные

данные:

Вид † Режим таблицы.

 

Рис.14. Диалоговое окно примера

обновления записей.

7) Запрос на добавление записей

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

- Создать новый запрос, причём в окне «Добавить таблицу» выбрать добавляемую таблицу (источник данных).

- Выбрать из списка Тип запроса † Добавление; в диалоговом окне указать имя таблицы, в которую вставляются записи, включить переключатель «в текущей базе данных», ОК.

- Определить поля, которые будут добавлены в таблицу (либо все поля - *, либо отдельные – перенести каждое в бланк запроса).

- При необходимости можно добавить условие для отбора вставляемых записей в строке Условие отбора (просмотр добавления - Вид † Режим таблицы).

- Запуск (!) и просмотр результирующей таблицы.

G Примечание. Объединять лучше табличные данные одинаковой структуры (равное количество полей совпадающего типа).

Пример. Добавить проданные в сентябре товары в общую таблицу учёта продаж.

Выполнение:

- Создать новый запрос в Конструкторе, в который вставить (Добавить таблицу) таблицу «Учёт_сент» (источник данных).

- Выбрать Тип запроса † Добавление; в диалоговом окне указать имя таблицы, в которую вставляются записи – «Учёт», выбрать переключатель «в текущей базе данных», ОК.

- Определить поля, которые будут добавлены в таблицу.

- Добавить условие для отбора вставляемых записей: > = 1.09.05.

- Запуск (!) и просмотр полученной таблицы – «Учёт».

 

Рис.15. Запросный бланк

и диалоговые окна примера добавления записей.

 

 

8) Запрос на удаление записей

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

Последовательность действий удаления записей:

- Создать новый запрос и включить в него нужную таблицу.

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

- Выбрать из списка Тип запроса † Удаление.

- Заполнить строку Условие отбора так, чтобы были отобраны записи для удаления.

- Для просмотра удаляемых записей выбрать Вид † Режим таблицы, затем выполнить запрос -!.

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

Выполнение:

- Создать запрос на основе таблицы «Учёт».

- Перенести в бланк запроса поле Дата продажи, для которого определено условие отбора.

- Выбрать из списка Тип запроса † Удаление.

- Заполнить строку Условие отбора: > = 1.09.05 (условие для удаления).

- Для просмотра удаляемых записей выбрать Вид † Режим таблицы.

- Выполнить запрос -!, подтвердить удаление - Да.

Рис.16. Запросный бланк

примера удаления записей.

 


Задания по теме «Запросы»

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

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

3. Создать запрос: вывести список продаж в определённую неделю.

4. Создать запрос: вывести список продаж во все дни, кроме этой недели.

5. Параметрический запрос: вывести все сведения о запрашиваемом товаре.

6. Создать запрос с вычисляемыми полями: ввести 10% скидку на все товары.

7. Групповой запрос: вывести список товаров, проданных общим количеством более заданного числа.

8. Групповой запрос: вывести список продавцов, продавших товаров общим количеством менее среднего уровня.

9. Создать перекрёстный запрос: вывести список продавцов и общую стоимость проданных ими товаров

10. Выполнить запрос на создание новой таблицы: вывести в отдельную таблицу товары с дилерской скидкой.

11. Создать запрос на обновление записей таблицы: изменить фамилию и инициалы продавца Петровой Е.А. на Петрушкину Е.А.

12. Создать запрос на добавление записей: дополнить таблицу Товары списком вновь поступивших товаров.

13. Создать запрос на удаление записей из таблицы: удалить из базы данных сведения об уволившихся продавцах.

 

Формы

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

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

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

Форма представляет собой некий электронный бланк, в кото­ром имеются поля для ввода данных. В форме можно: каждое по­ле можно разместить в точно заданном месте, выбрать для него цвет и заливку; помещать вычисляемые поля, OLE-объекты; намно­го проще работать с большими текстами поля типа MEMO в тек­стовом окне с полосами прокрутки.






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.