Сложные запросы в аксесс - IT Новости
Microclimate.su

IT Новости
127 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Сложные запросы в аксесс

MS Access: создание сложных запросов с помощью конструктора запросов

Цель урока:

  • закрепить знания и умения по работе с различными видами запросов в БД;
  • освоить принципы создания запросов на выборку с условием;
  • развивать логическое мышление, речемыслительную деятельность, учащихся на основе работы со сложными запросами;
  • содействовать воспитанию интереса к предмету, формировать интерес к техническому образованию.
  • Тип урока: комбинированный (изучение нового и закрепление ране изученного материала).

    Методы проведения урока:

  • тестирование;
  • беседа;
  • рассказ с демонстрацией;
  • упражнения.
  • Оборудование:

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

    Постановка цели урока.

    Сегодня тема нашего урока: «Создание сложных запросов с помощью конструктора». На этом занятии мы вспомним основные приемы работы с объектами БД и научимся создавать с помощью конструктора запросы с параметром.

    Актуализация опорных знаний (тест).

    Для начала мы вспомним основные сведения о БД и ответим на вопросы теста (выполнение тестового задания, затем взаимоконтроль).

    База данных — это:

    • набор сведений, относящихся к определенной теме или задаче, предназначенных для временного хранения;
    • программное обеспечение для работы с информацией;
    • организованная совокупность сведений о конкретных объектах реального мира в какой-либо предметной области, предназначенная для длительного хранения и постоянного применения;
    • поиск и изменение информации об объектах реального мира.

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

    • в виде таблиц;
    • на множестве компьютеров сети;
    • друг с другом в отношении вложенности и подчиненности;
    • в памяти нескольких вычислительных машин
    • Основными объектами СУБД MS Access являются:
    • таблицы, запросы, отчеты, бланки;
    • таблицы, запросы;
    • таблицы, вопросы, закладки, формы;
    • таблицы, запросы, отчеты, формы;

    Таблица — это:

    • объект БД, предназначенный для хранения бланков;
    • объект БД, предназначенный для ввода данных;
    • объект БД, предназначенный для хранения данных в виде записей и полей;
    • запросы, отчеты, бланки

    Таблицу в БД MS Access можно создать с помощью:

    • линейки и карандаша;
    • мастера и конструктора;
    • мастера, конструктора и путем ввода данных.
    • путем ввода данных;

    Запрос — это:

    • объект БД, предназначенный для хранения данных;
    • объект БД, позволяющий получить нужные данные из одной или нескольких таблиц;
    • объект БД, предназначенный для вывода данных;
    • объект БД, предназначенный для ввода данных.

    Отчет — это:

    • объект БД, предназначенный для ввода данных
    • объект БД, предназначенный для расчета данных
    • объект БД, предназначенный для печати данных;
    • объект БД, предназначенный для хранения данных.

    Форма — это:

    • объект БД, предназначенный для печати данных;
    • объект БД, позволяющий получить нужные данные;
    • объект БД, предназначенный для хранения данных;
    • объект БД, предназначенный для ввода данных.

    Объяснение нового материала.

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

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

    Окно конструктора разделено на две части. В верхней части находятся окна таблиц со списками полей. Имя каждой таблицы отображается в строке заголовка такого окна. В базе данных MS Access в различных режимах меняются и кнопки панели инструментов.

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

    Запрос на выборку позволяет отобрать необходимые поля с записями, которые могут быть отсортированы, либо отобраны по какому либо условию. Для использования условия используются знаки «=», «>», » 7, =6

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

    Для выбора различных видов запросов используется конструктор и в появившемся основном меню в пункте «Запрос» выбираем необходимый параметр запроса. Вид конструктора автоматически меняется, где появляются новые строки, куда и вносятся значения условий.

    Демонстрация приемов работы (приложение 1)

    • показ приемов работы по созданию запроса с параметром на примере БД «Агентства»
    • элементы окна режима Конструктор;
    • добавление таблиц;
    • заполнение полей запроса;
    • сортировка;
    • добавление, удаление и изменение параметров в запросе.

    Практическая работа: закрепление и совершенствования знаний и формирование умений по составлению запросов с параметрами.

    • правила ТБ
    • объяснение задания
    • критерии оценивания-
    • правила сдачи итогов работы

    Задание (для учащихся):

    Создайте форму для ввода данных в таблицу «Европа».

    Создать отчет, выводящий следующие данные:

    • название государства
    • столицу

    Создать запрос, выводящий, выводящий следующие данные:

    • название государства
    • площадь (в порядке убывания)

    Создать запрос с параметром, выводящий следующие данные:

    • название государства
    • столица
    • плотность населения (более 7 чел)

    Создать запрос с параметром, выводящий следующие данные:

    • название государства
    • столица
    • плотность населения (менее 7 чел)

    Задание (для учащихся):

    Создать запрос, выводящий следующие данные:

    • название страны
    • название наивысшей точки и ее высоту

    Создать запрос с параметром, выводящий следующие данные:

    • название страны
    • название столицы
    • язык арабский

    Создать запрос с параметром, выводящий следующие данные:

    • название страны
    • денежная единица фунт стерлинг и алжирский динар

    Создать запрос с параметром, выводящий следующие данные:

    • название страны
    • население (более 20 млн)
    • название наивысшей точки и ее высота (не менее 2000м)

    Создать запрос с параметром, выводящий следующие данные:

    • название страны
    • крупные города с населением от 100 тыс
    • религия христианство

    Создать отчет с параметром, выводящий следующие данные:

    • название страны (по алфавиту)
    • валюта
    • язык
    • экспорт

    Создать отчет с параметром, выводящий следующие данные:

    • название страны (по алфавиту),
    • столица,
    • население столицы,
    • крупные города этой страны,
    • население крупного города.

    Подведение итогов урока.

    (проверка выполнения практической работы в парах, собеседование)

    На уроке поработали хорошо: :

    За работу на уроке выставлены оценки: :

    Создать базу данных по выбранной теме. Требования:

    • не менее 3-х таблиц;
    • 3 запроса (на выборку, с параметром, перекрестный);
    • 3 отчета;
    • форма для ввода данных в таблицу.
    Читать еще:  Сброс пароля администратора

    Сложные запросы

    С помощью сложных запросов можно выполнить следующее.

    • Представить данные из нескольких связанных таблиц в виде одной.

    • Выбрать данные по заданному пользователем условию.

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

    • Отобрать некоторые записи из таблиц с помощью какого-либо условия.

    Запросы с вычисляемыми полями

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

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

    Теперь создайте запрос с вычисляемым полем.

    1. Откройте желаемую базу данных Microsoft Access 2007 ( Отдел продаж ).

    2. Перейдя на вкладку Создание в группе Другие, нажмите кнопку Конструктор запросов . Будет создан новый запрос, и на экране вы увидите окно Добавление таблицы (см. рис. 5.7).

    3. Перейдите на вкладку Таблицы и выберите нужную таблицу (например, Клиенты ). Затем нажмите кнопку Добавить , а после этого – кнопку Закрыть . Пустой бланк запроса отобразится на экране.

    4. Чтобы создать вычисляемое поле с названием Данные , нажмите на ячейке Поле в столбце бланка запроса и введите следующее: Данные: [Телефон]+” “+[Адрес].

    5. Если вы установите флажок Вывод на экран в столбце бланка запроса, то в результате отобразится данное поле запроса.

    6. Вы также можете установить сортировку, щелкнув кнопкой мыши на параметре Сортировка в столбце бланка запроса и выбрав вариант По возрастанию в раскрывающемся списке. Измененный бланк запроса будет таким, как показано на рис. 5.17.

    Рис. 5.17. Готовый бланк запроса

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

    8. В поле Имя запроса вы можете ввести название нового запроса. Затем нажмите кнопку ОК .

    9. Перейдите на вкладку Конструктор , а затем нажмите кнопку Выполнить . После этого вы можете увидеть результат измененного запроса (рис. 5.18).

    Рис. 5.18. Результат измененного запроса

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

    Внутреннее соединение таблиц

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

    • Внутреннее соединение – соединение также называют эквисоединением – один из самых распространенных типов соединения, которое может связывать записи в таблицах базы данных отношением равенства.

    Access 2007 может автоматически создавать эквисоединения при наличии двух условий:

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

    – данное соединение было задано пользователем в окне Схема данных .

    • Внешнее соединение – соединение, использующееся для создания запроса, который объединяет все записи из одной таблицы и записи из другой таблицы (но только те, в которых связанные поля совпадают).

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

    • Рекурсивное соединение – еще один вид соединения для совмещения данных в одной таблице. Создается при добавлении в запрос копии таблицы, поля похожих таблиц связываются.

    В Microsoft Access 2007 используются некоторые слова языка SQL:

    • INNER JOIN – для указаний внутренних соединений;

    • LEFT JOIN или RIGHT JOIN – для указания внешних соединений;

    • WHERE поле1=поле2 – внутреннее соединение;

    • WHERE поле1>поле2 – соединение по отношению.

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

    1. Откройте желаемую базу данных Microsoft Access 2007 ( Отдел продаж ).

    2. Перейдя на вкладку Создания в группе Другие , нажмите кнопку Конструктор запросов . Будет создан новый запрос, и на экране вы увидите окно Добавление таблицы (см. рис. 5.7).

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

    Рис. 5.19. Пустой бланк запроса, сверху видны структуры таблиц и их связь

    4. Выберите необходимые поля из двух макетов таблиц двойным щелчком кнопки мыши на названии поля (например, Имя , Телефон , Адрес , Товар , Количество ).

    5. Если вы установите флажок Вывод на экран в столбце бланка запроса, отобразится данное поле запроса.

    6. Вы также можете установить сортировку, для этого щелкните кнопкой мыши на параметре Сортировка в столбце бланка запроса нужного вам поля. В открывающемся списке выберите нужный вариант сортировки (рис. 5.20).

    Рис. 5.20. Настроенный бланк запроса

    В листинге 5.2 приведен SQL-текст вашего запроса.

    Данный текст является ознакомительным фрагментом.

    Запросы в access

    Запросы в access – объекты базы данных, извлекающие из таблиц или других запросов информацию согласно заданным условиям. Это виртуальные таблицы (существующие в оперативной памяти компьютера.

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

    Можно легко обнаружить, является ли запрос обновляемым: при отображении результатов запроса в конце записей должна быть пустая строка, которая помечена значком звездочки (*) в области выделения записи слева. Тогда в эту строку можно вводить данные, которые создадут новую запись. Если такая строка отсутствует, добавлять записи в запрос и изменять значения полей запроса нельзя.

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

    Читать еще:  Перечислите источники административного права

    Основные отличия запросов от расширенного фильтра:

    — используя реляционные связи, можно применять запрос к нескольким таблицам (запросам);

    — на экран можно выводить только необходимые поля;

    — в запросе можно переставлять поля в любом порядке;

    — команды фильтра сохраняются временно, запрос хранится постоянно как объект базы данных;

    — применение фильтра и сортировки возможно только в открытой таблице, запросе и форме, а запрос работает с таблицами и запросами, которые не надо открывать;

    — в запросе можно выводить на экран только необходимые (по количеству или процентному соотношению) записи (например, для лучшей десятки продаж можно отсортировать сумму продаж по возрастанию, а в свойствах запроса «Набор значений» (в режиме конструктора) ввести число 10;

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

    Обилие всяких кнопочек и настроек может постоянно сбивать вас с толку. Также может появиться страх при первом открытии программы.

    Самым распространённым является запрос на выборку.

    В строке условия отбора значение даты вводится, окруженное знаками #. Например, Between #01.01.2010# And #31.12.2010# — будут отобраны записи в диапазоне с 1 января по 31 декабря 2010 года.

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

    При сортировке нескольких полей порядок сортировки идёт слева направо.

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

    При операциях с числами программа использует математические знаки, например «+». Но при соединении текстовых полей знак «+» заменяется знаком «&» (амперсанд). Этот знак выполняет операцию конкатенации, т. е. соединяет между собой строки и подстроки, например, ФИО: [Фамилия] & » » & [Имя] & » » & [Отчество] (в кавычках заключена константа «пробел»).

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

    При создании вычисляемого поля надо ввести название столбца, после него знак двоеточия, а затем вычисляемое выражение (как в вышеупомянутом примере с ФИО).

    Для очистки запроса есть команда меню Правка – Очистить бланк.

    Нельзя добавлять и изменять записи в запросах, если:

    — две таблицы запроса связаны отношением «один-ко-многим» и в таблице «один» не задан первичный ключ;

    — в запросе используются рекурсивные соединения (связь установлена между полями одной таблицы (запроса));

    — в запросе применяются статистические функции SQL.

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

    — таблица является единственной в запросе;

    — таблицы в запросе связаны отношением «один-к-одному»;

    — если таблицы в запросе связаны отношением «один-ко-многим», можно изменять поля только в таблице «многие».

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

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

    Если хотим, чтобы запрос извлекал все записи, удовлетворяющие хотя бы одному из условий, одно условие надо ввести в строку «Условие отбора», а другое в строку «Или».

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

    Групповые операции (перекрёстные запросы в access)

    Аксесс довольно сложная программа. Это подтверждает тот факт, что в интернете можно найти массу информации по ней. Однако, вы знаете что на самом деле достаточно знать лишь 20% инструментов, чтобы создавать и настраивать 80% баз данных в программе? И научиться этому можно после изучения 40 специальных видеоуроков, в которых описана самая суть без воды.

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

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

    По умолчанию строка «Групповая операция» в режиме конструктора скрыта.

    Группировка

    Инструкция «Группировка» разбивает результаты запроса по каждому уникальному значению поля (полей). Например, если в поле Страна встречается 20 раз Литва, 30 раз Польша, 50 раз Чехия, то при группировке по этому полю будет всего три записи – по одной на каждую страну. Если будем добавлять группировку в другие поля, то количество выбранных записей возрастёт, так как программа будет искать уникальное значение не одного, а нескольких полей (например, зададим группировку по странам и по поставщикам. В Литве пять поставщиков, а, следовательно, уникальных записей для Литвы уже будет пять, а не одна).

    Инструкция Группировка автоматически задаёт сортировку в алфавитном порядке. Для изменения порядка сортировки надо явно указать программе параметры в строке «Сортировка».

    Управляющие запросы

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

    Создание таблицы

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

    Есть возможность создания новой таблицы в другой базе данных, выбрав свойство «Другая база данных» и введя имя базы в поле «Имя файла».

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

    Перед выполнением запроса можно посмотреть, что получится, отобразив запрос в режиме таблицы. Создание физической таблицы произойдёт только после нажатия кнопки «Запуск».

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

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

    Обновление

    Позволяет изменять (обновлять) соответствующие значения в таблицах (одной или нескольких). Сразу создаётся обычный запрос на выборку и только затем на его основе запрос на обновление.

    Добавление

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

    Читать еще:  Вам необходимы права администратора ultraiso

    Удаление

    Удаляет указанные записи в таблицах (одной или нескольких).

    Перед выполнением запроса на удаление надо создать такой же запрос на выборку. Лишь убедившись, что отобраны нужные записи, меняем тип запроса «Выборка» на «Удаление».

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

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

    Хотите узнать какие 35 инструментов нужно знать, чтобы научиться создавать базы данных в Аксесс?

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

    Для поля, которое предполагается использовать как параметр, введите в ячейку строки «Условие отбора» выражение с текстом приглашения, заключенным в квадратные скобки.

    Например, нам часто нужны сведения по сотрудникам, фамилия которых начинается с определённой буквы. Можно сделать около 30 запросов (для почти всех букв русского алфавита), чтобы получать требуемые данные, но это займёт много времени для создания запросов, загромоздит базу данных и вызовет путаницу. Вместо этого создадим один запрос для формирования списка сотрудников, который будет нас спрашивать, с какой буквы начинающиеся фамилии мы хотим видеть. В поле «Условие отбора» введём: Like [Введите первую букву фамилии]& «*». На самом деле, если введём букву «С», условие будет читаться Access как Like «С*». Знак амперсанда «&» указывает на необходимость сцепления введённой буквы с остальными символами искомой ячейки, так как «*» обозначает любое количество символов после «С».

    Например, выражение Between [Начальная дата:] And [Конечная дата:] запросит ввести начальную и конечную даты и выдаст все записи, содержащиеся в этом диапазоне (программа распознает разные форматы, например: 01.01.2010 или 01,01,2010 или 01/01/2010). Но для этого в режиме конструктора через меню Запрос – Параметры (можно вызвать через контекстное меню) надо вызвать диалоговое окно «Параметры запроса». В столбце «Параметр» указать правильно название, например [Начальная дата:], а в столбце «Тип данных» указать требуемый тип, в нашем случае «Дата/время». Как правило, указываются параметры для числовых и полей дата/время.

    Ещё пример: Like «. » & [Введите номер месяца, например, для марта — 03, для ноября — 11] & «. ». Программа попросит ввести номер месяца года и выдаст все записи, относящиеся к этому месяцу. Если в параметре ввести знак звёздочки «*», то будут выбраны дни рождений за все месяцы.

    Запрос может не работать, если формат даты в условии задан 00.00.0000, а в настройках панели управления установлен 00/00/0000. Тогда надо вместо точек добавить ещё по одному вопросу.

    Запрос на объединение таблиц

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

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

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

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

    Собственный язык Access JetSQL имеет отличия от ANSI SQL.

    Хотя большинство запросов создаются в режиме конструктора, Access хранит их в формате SQL (структурированном языке запросов). Чтобы увидеть режим SQL, надо выбрать Вид-Режим SQL.

    Сложные запросы в аксесс

    Запросы в Access

    Запросы в Access являются основным инструментом выборки, обновления и обработки данных в таблицах базы данных. Access в соответствии с концепцией реляционных баз данных для выполнения запросов использует язык структурированных запросов SQL (Structured Query Language). С помощью инструкций языка SQL реализуется любой запрос в Access.

    Основным видом запроса является запрос на выборку. Результатом выполнения этого запроса является новая таблица, которая существует до закрытия запроса. Записи формируются путем объединения записей таблиц, на которых построен запрос. Способ объединения записей таблиц указывается при определении их связи в схеме данных или при создании запроса. Условия отбора, сформулированные в запросе, позволяют фильтровать записи, составляющие результат объединения таблиц.

    В Access может быть создано несколько видов запроса:

    • запрос на выборку — выбирает данные из одной таблицы или запроса или нескольких взаимосвязанных таблиц и других запросов. Результатом является таблица, которая существует до закрытия запроса. Формирование записей таблицы результата производится в соответствии с заданными условиями отбора и при использовании нескольких таблиц путем объединения их записей;
    • запрос на создание таблицы — выбирает данные из взаимосвязанных таблиц и других запросов, но, в отличие от запроса на выборку, результат сохраняет в новой постоянной таблице;
    • запросы на обновление, добавление, удаление — являются запросами действия, в результате выполнения которых изменяются данные в таблицах.

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

    С помощью запроса можно выполнить следующие виды обработки данных:

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

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

    0 0 голоса
    Рейтинг статьи
    Ссылка на основную публикацию
    Adblock
    detector