17148

Формування запитів у СУБД MS Access

Лекция

Информатика, кибернетика и программирование

Лекція №20 Тема: Формування запитів у СУБД MS Access. План Види запитів. Створення простих запитів за допомогою Майстра. Створення запитів за допомогою Конструктора. Запит на створення таблиці. Запит на модифікацію даних. Перехресний запит.

Украинкский

2013-06-29

40.2 KB

19 чел.

Лекція №20

Тема: Формування запитів у СУБД MS Access.

План

  1.  Види запитів.
  2.  Створення простих запитів за допомогою Майстра.
  3.  Створення запитів за допомогою Конструктора.
  4.  Запит на створення таблиці.
  5.  Запит на модифікацію даних.
  6.  Перехресний запит.

У СУБД MS Access у залежності від розв'язуваної задачі може бути створено кілька видів запитів, кожний з який має свою піктограму:

  1.  - запит на вибірку, що забезпечує вибір даних зі зв'язаних таблиць і таблиць, отриманих при реалізації інших запитів;
  2.  - запит на створення таблиці, заснований на запиті на вибірку і який забезпечує формування і заповнення нової таблиці;
  3.  - запит на відновлення, що дозволяє вносити зміни в групу записів, що відбираються за допомогою запиту на вибірку;
  4.  - запит на додавання, за допомогою якого з таблиці результату запиту записи додаються в таблиці бази даних;
  5.  - запит на видалення, що забезпечує виключення записів з однієї чи декількох зв'язаних таблиць.

Створення запиту починається за командою Создать вкладки «Запросы» вікна бази даних. У діалоговому вікні «Новый запрос»,  вибирається засіб створення запиту. Це може бути «Конструктор» чи один з Майстрів: «Простой запрос», «Перекрестный запрос» т. д. Якщо для створення запиту обраний один з Майстрів, у лівій частин вікна відображається «чарівна паличка».

Створення простих запитів за допомогою Майстра, Послідовність дій при використанні Майстра запитів розглянемо на прикладі формування списку працівників з ідентифікаційними кодами. Команда «Простой запрос» активізує вікно «Создание простых запросов», за допомогою якого послідовно вибираються потрібні таблиці зі списку «Таблицы/запросы» і поля зі списку «Доступные поля:», використовувані в запиті. Імена потрібних полів для запиту передаються у вікно «Выбранные поля:» за допомогою кнопок > чи >>

Після вибору таблиць і їхніх полів клацанням на кнопці «Далее» активізується чергове вікно «Создание простых запросов» (крок 2), з альтернативними перемикачами типів запитів: «подробный» чи «итоговый». Розходження між цими типами запитів ілюструється в лівій частині вікна.

На черговому кроці роботи Майстра знову відкривається вікно «Создание простых запросов» (крок 3),  за допомогою якого задається ім'я запиту,  «Ідентифікаційні коди» і встановлюється режим роботи системи.

За допомогою альтернативного перемикача «Открыть запрос для просмотра данных» після клацання на кнопці «Готово» на екран викликається вікно «Ідентифікаційні коди: запит на вибірку» з результатами вибірки. При включенні вимикача «Изменить макет запроса» забезпечується перехід до Конструктора з метою редагування запиту.

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

Для активізації Конструктора досить вибрати рядок «Конструктор» вікна «Новый запрос». При цьому відкривається вікно «Добавление таблицы», за допомогою якого, послідовно відкриваючи вкладки «Таблицы», «Запросы» і «Таблицы и запросы», вибираються потрібні для формованого запиту таблиці чи запити клацанням на кнопці «Добавить»,

Після набору необхідного для запиту кількості таблиць і клацання на кнопці «Закрыть» на екрані відображається вікно Конструктора запитів «Запрос N: запрос на выборку (отмена)».

Вікно Конструктора запиту на вибірку розділено на дві панелі. Верхня частина вікна містить схему даних запиту, що включає обрані таблиці зі списками їхніх полів і зв'язку між ними. У цій схемі користувачем у разі потреби можуть бути встановлені нові зв'язки між таблицями.

Нижня частина вікна є бланком запиту за зразком. Кожен стовпець бланка відноситься до одного поля. Поля можуть використовуватися для включення їх у результат виконання запиту, для сортування за даним полем і для завдання умов добору. При заповненні бланка запиту необхідно виконати наступні дії:

  1.  у рядок «Поле» включити імена використовуваних полів шляхом їхнього «буксирування» з відповідної таблиці верхньої панелі вікна. Передачу всіх полів таблиці можна зробити за допомогою символу «*» також методом його «буксирування». У рядку «Имя таблицы» автоматично відображається ім'я тієї таблиці чи запиту, з якого обране поле;
  2.  у рядку «Сортировка» указати порядок сортування записів у результуючій таблиці («по возрастанию» чи «по убыванию»). Результатів запитів можуть сортуватися по одному чи декількох полях. Порядок сортування визначається порядком проходження полів у бланку запиту. У разі потреби сортування скасовується установкою параметра сортування «отсутствует»;
  3.  у рядку «Вывод на экран» відзначити поля, що включаються в результуючу таблицю, установкою прапорця ;
  4.  у рядку «Условия отбора» сформувати логічні умови (критерії) добору записів, що можуть містити метасимволи, а також логічні функції И і ИЛИ.

У разі потреби непотрібні поля після їхнього виділення видаляються клавішею <Delete>. Видалення всіх полів із бланка запиту виконується за командою меню Правка - Очистить бланк.

У нижній панелі вікна запиту на вибірку можуть формуватися поля, що обчислюються, а також формуватися підсумкові поля з застосуванням групових функцій. Поля, що обчислюються, створюються тоді, коливі таблицях бази даних немає необхідних даних, але вони можуть бути визначені на основі наявних. При формуванні полів, що обчислюються, можуть використовуватися арифметичні вираження й убудовані функції.

Вираження вводиться в порожній осередок рядка «Поле» вільного стовпця бланка запиту. При клацанні на цьому полі автоматично формується  ім'я поля «Выражение N», де N - порядковий номер поля, що обчислюється. Після імені поля записується вираження, відокремлюване від імені символом «:» Наприклад, якщо в результуючу таблицю необхідно включити поле, у якому буде відображатися вік працівника, то поле, що обчислюється, буде мати наступний вид:

У результуючій таблиці можна змінити порядок проходження її полів, зафіксувати чи сховати визначені поля, установити інший шрифт, розміри рядків і стовпців і т. д. Усі ці процедури виконуються безпосередньо чи за допомогою відповідних команд меню Формат.

Розглянутий вище запит за зразком має жорстко задані умови добору (Посада=«інженер» Or «технолог» і ін.), оперативна зміна яких утруднено. З огляду на це, у MS Access може використовуватися спеціальний тип запиту на вибірку - запит з параметром, що має наступний формат:

Like [текст],

де Like - оператор (команда) мови SQL;

[текст] - будь-який текст звертання до користувача

Даний оператор записується в рядок «Условия отбора» нижньої панелі бланка запиту в звичайному порядку.

Після запуску такого запиту на виконання на екран викликається вікно «Введите значение параметра», у поле якого вводиться одне з можливих значень параметра.

При необхідності формування запиту, що складає з декількох параметрів, вони будуть виводитися на екран у тій послідовності, у якій вони зазначені в бланку запиту, наприклад, [Уведіть найменування посади], а потім - [Уведіть новий оклад].

Використання оператора Like (подоба) і метасимволів дозволяє знайти необхідні записи в таблиці, знаючи лише фрагмент написання параметра.

Формування полів, що обчислюються, засобами Конструктаpa выражений. Для складних обчислень і при використанні даних декількох таблиць заповнення поля, що обчислюється, доцільно виконувати за допомогою Конструктора выражений.

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

В даний час в Україні діє алгоритм розрахунку прогресивного прибуткового податку. Для його реалізації в полі бланка запиту на вибірку, що обчислюється, необхідно сконструювати вираження, у якому використовуються поля двох зв'язаних таблиць бази даних «Штат» і «Співробітники»:

Для конструювання запиту з таким полем необхідно клацнути на імені вільного поля, змінити його на «Прибутковий податок», клацанням правої кнопки миші викликати контекстно залежне меню і виконати команду Конструктор. У результаті цього на екрані відобразиться діалогове вікно «Конструктор выражений». Клацанням на потрібних об'єктах бази даних, на кнопках арифметичних, логічних операцій і на кнопках логічних відносин у верхнім вікні варто набрати потрібне вираження. У вираженні  імена таблиць і їхніх полів-ключів укладені в квадратні дужки і між ними  поміщений знак «!», Ці роздільники встановлюються системою за замовчуванням без утручання користувача.

За командою ОК вираження передається в бланк-запит, де воно розміщається слідом за ім'ям поля, що обчислюється, і відокремлюється від нього двокрапкою «:».

Створений запит виконується за командою Запуск меню Запрос чи за допомогою однойменної кнопки панелі інструментів Конструктор запросов. За командою меню Файл - Сохранить как /экспорт він може бути збережений у поточній базі чи у файлі з заданим ім'ям, наприклад, «Прибутковий податок».

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

При цьому в рядок «Условия отбора» за допомогою Конструктора выражений можуть уводитися визначені критерії добору записів з вихідних таблиць. Критерії добору можуть містити:

  1.  метасимволи *, #, ?, [список _ знаків], [! список _ знаків] і їхні всілякі сполучення;
  2.  логічні функції: Or (ИЛИ), And (И), Not (HE), Eqv (Эквивалентность) Xor (Исключающее ИЛИ) і Imp (Импликация);
  3.  знаки операції порівняння: <, <=, <>, =, >, >= і Between (між);
  4.  знаки арифметичних операцій: +, -, *, / і оператор подоби Like;
  5.  дані різних типів (текстова, числова, грошові, дата/час і ін.).

В умовах добору метасимволи #...# використовуються для виділення даних типу дата/час, метасимвол * - для позначення будь-якої послідовності символів, метасимвол ?—для позначення будь-якого символу і т. д.

Для введення умов добору доцільно використовувати Конструктор выражений, що викликається командою Построить... контекстно залежного меню виділеного поля в бланку запиту чи за допомогою однойменної кнопки панелі інструментів «Конструктор запросов».

Конструювання запитів різних типів. Засобами MS Access можуть бути сконструйовані запити на створення таблиці, на відновлення, додавання і видалення записів з таблиць, а також перехресний запит. Усі вони ґрунтуються на запиті на вибірку. Розглянемо послідовність конструювання деяких з них.

Запит на створення таблиці використовується для збереження результату запиту в знов створеній таблиці і відрізняється від запиту на вибірку тим, що забезпечує включення нової таблиці до складу таблиць поточної бази даних чи експортування таблиці в іншу базу даних. Для конструювання такого запиту необхідно створити запит на вибірку чи викликати в режимі Конструктора раніше створений запит. Потім за допомогою команди меню Запрос - Создание таблицы чи клацанням на кнопці Тип запроса панелі «Конструктор запросов» викликати діалогове вікно «Создание таблицы».

У вікно «Имя таблицы» необхідно ввести ім'я нової таблиці і клацнути на кнопці «ОК». Створена таблиця може бути включена в список таблиць поточної бази даних чи експортована в іншу базу, ім'я якої вказується в нижнім вікні. Після визначення імені нової таблиці запит необхідно запустити на виконання клацанням на кнопці , чи виконати команду меню Запрос – Запуск.

Запит на відновлення. Послідовність конструювання запиту цього типу розглянемо на прикладі запиту на відновлення деяких посадових окладів у таблиці «Штат», створивши попередньо запит на вибірку.

Після виконання команди меню Запрос - Обновление нижня панель бланка запиту змінюється: з'являється рядок «Обновление»,у якій формуються правила відновлення (наприклад, запит з параметром).

При запуску на виконання такого запиту з параметрами на екрані послідовно відображаються вікна для уведення відповідних параметрів.

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

Запит на додавання. Такий запит забезпечує додавання одного чи декількох записів, що відповідають умовам добору, у кінець однієї чи декількох таблиць Для конструювання запиту необхідно створити запит на вибірку для вихідної таблиці.

Після цього необхідно змінити зазначеним вище способом тип запиту  увівши команду Добавить, у результаті чого з'являється діалогове вікно, у якому в полі імені варто ввести ім'я таблиці - спадкоємця записів.

Сконструйований запит варто зберегти в поточній чи іншій базі даних, скориставшись альтернативним перемикачем.

Запит на видалення. Такий запит дозволяє видаляти запис з однієї  чи декількох зв'язаних таблиць. В другому випадку при визначенні схеми даних у діалоговому вікні «Изменение связей» обов'язково повинний бути встановлений режим каскадного видалення.

Запит на видалення при відношенні 1 :М конструюється на основі головної таблиці (у розглянутому випадку це може бути таблиця «Штат»). На основі цієї таблиці формується запит на вибірку шляхом «буксирування» значка «*» у поле бланка запиту. Потім установлюється тип запиту Удаление. В осередок «Удаление» у відповідь на запрошення «Из», що з'явилося, необхідно записати умову добору запису на видалення (це може бути параметр).

Попередній перегляд результату може бути виконаний клацанням на кнопці , панелі інструментів, а каскадне видалення записів з таблиць «Штат» і «Співробітники» — клацанням на кнопці чи за командою меню Запрос-Запуск.

Перехресний запит. Цей запит створюється за допомогою Майстра, що запускається вибором відповідної команди в діалоговому вікні «Новый запрос». Майстер створює таблицю, у якій лівий стовпець утворить заголовки рядків зі значень одного обраного поля таблиці, верхній рядок утворить заголовки стовпців зі значень іншого поля таблиці, а на перетинанні рядків і стовпців розміщаються підсумкові значення, що обчислюються за значеннями третього поля. Для одержання підсумкових значень виробляється угруповання по полях, використовуваних для заголовків рядків і стовпців. Для значень третього поля для групових записів використовується обирана статистична функція.

Крім цього, перехресний запит може бути створений за допомогою Конструктора, створивши спочатку запит на вибірку, і потім перетворивши його в перехресний запит.

Література:

Пушкар О.І. Інформатика. Посібник, Київ, 2001 – 696 с. [5], 210 - 225

Контрольні запитання:

  1.  Створення запиту  БД за допомогою Конструктора.
  2.  Алгоритм побудови запиту на модифікацію в БД.


 

А также другие работы, которые могут Вас заинтересовать

31872. ЭНДОСКОПИЧЕСКАЯ ДИАГНОСТИКА И ЛЕЧЕНИЕ ГАСТРОЭЗОФАГЕАЛЬНОЙ РЕФЛЮКСНОЙ БОЛЕЗНИ 2.34 MB
  Ацидометрия и исследование моторнодвигательной функции пищевода и желудка. Необходимость дальнейшего изучения различных сторон этиопатогенеза данного заболевания не вызывает сомнений так как до конца не определены вопросы диагностики и выбор оптимального метода лечения в связи с чем целесообразным представляется исследование морфофункционального статуса пищевода у больных данным заболеванием при неэффективности проводимого лечения. В доступной зарубежной и отечественной литературе нет единого мнения о причинах способствующих...
31873. Культурологическая семантика названий улиц и их влияние на формирование культурного фона и мировоззрения человека 108 KB
  Синявского весь мир: глава о советском языке в его книге имеет именно такой подзаголовок: Переименованный мир The Renmed World 1 . Оба процесса и переименования и перепереименования несут значительную культурноидеологическую нагрузку и несомненно создают определенный культурноидеологический мир определенную систему ценностей для тех поколений которые приходят в этот мир без груза прошлых названий и соответственно прошлых миров и систем. Отверженные обиженные разочаровавшиеся они поехали за американской мечтой...
31874. Использование трудовых ресурсов в СПК «Новый путь» Шахунского района Нижегородской области 1.66 MB
  Кроме того это объясняется тем что при возрождаемой конкуренции все большее значение приобретает результативность труда все заметнее сказываются на итогах деятельности как потери понесенные вследствие упущений так и выигрыш полученный от реализации резервов роста производительности труда и повышения эффективности производства. Затраты труда на единицу этих продуктов увеличились почти вдвое что связано в основном со снижением продуктивности животных урожайности культур. Увеличение этого продукта и особенно его основной части вновь...
31875. Багатозначні слова. Пряме й переносне значення слова 36.5 KB
  Пряме й переносне значення слова Тести Варіант 1 1. Лексичне значення слова вивчає: а лексикографія; б лексикологія; в лексика; г лексема. Як називаються значення слова які виникають під впливом різних мовних ситуацій: а прямі; б гіперболічні; в похідні; г полісемічні.
31877. Техническое обоснование разработки компьютерной сети и анализ исходных данных 183 KB
  1 Техническое обоснование разработки компьютерной сети и анализ исходных данных Бухгалтерия и отдел кадров формирует комплексный бухгалтерский отчёт о деятельности предприятия полученной прибыли и произведённых затратах.2 Распределение РС по комнатам и отделам Номер комнаты Площадь помещения м2 Наименование отдела Наименование пользователей в сети Количество РС шт Количество возможных РС шт 412 84 Главный бухгалтер GlvBuh 1 2 Продолжение таблицы 1.2 Номер комнаты Площадь помещения м2 Наименование отдела...
31878. ЭЛЕКТРОННЫЕ КЛЮЧИ 1.08 MB
  В качестве нелинейных приборов с управляемым сопротивлением в электронных ключах используются полупроводниковые диоды транзисторы фототранзисторы тиристоры оптроны электронные лампы.1 Диодные ключи Цель работы исследование статических и динамических параметров и характеристик диодных ключей. На рис.1 а показаны типичные статические ВАХ германиевого Gе и кремниевого Si диодов а на рис.
31879. Определение чистоты лекарственных средств 464 KB
  Каково назначение определения удельного вращения в препаратах кислота аскорбиновая и кислота глютаминовая Приведите формулу для расчета удельного вращения в растворах. Для каких субстанций определяют прозрачность цветность раствора Какие нормативные документы регламентируют определение этих показателей Какими подходами пользуются при определении рН кислотности или щелочности Какие примеси и какими методами определяются согласно разделу блока чистоты Посторонние примеси. Промоделируйте определение прозрачности раствора в...