Учебно-методический комплекс по дисциплине «Автоматизированные информационные системы земельного кадастра и землеустройства» для специальности 5B090700 «Кадастр» Астана 2010
Вид материала | Учебно-методический комплекс |
СодержаниеПростой запрос Конструктор запросов Параметры запроса |
- Учебно-методический комплекс по дисциплине «Землеустроительное проектирование» для, 1200.01kb.
- Учебно-методический комплекс по дисциплине «Мониторинг земель» для специальностей 050907-, 1153.66kb.
- Учебно-методический комплекс Специальность: 080502 Экономика и управление на предприятии, 324.86kb.
- Учебно-методический комплекс по дисциплине: «анализ проектов» для студентов специальностей, 2311.99kb.
- Учебно-методический комплекс по дисциплине: Информационные системы в экономике для, 266.03kb.
- Учебно-методический комплекс по дисциплине «Управление рисками» Для специальности:, 1692.15kb.
- Учебно-методический комплекс по дисциплине «финансы» астана, 2010, 1311.57kb.
- Учебно-методический комплекс для студентов по дисциплине «оценка бизнеса и инноваций», 4385.11kb.
- Учебно-методический комплекс по дисциплине «Предпринимательство» Для специальности:, 1481.44kb.
- Учебно-методический комплекс по дисциплине «Экономика и управление в акционерных обществах», 610.54kb.
Лекция 8
Запросы
Назначения запросов
Запрос является средством извлечения информации из базы данных, причем данные могут быть распределены среди нескольких таблиц.
Создание запросов
Для создания запроса выделите вкладку Запрос и нажмите кнопку Создать. Создать запрос можно двумя способами: Конструктор и Простой запрос. Выберите Простой запрос и нажмите кнопку ОК.
Простой запрос
В окне «Создание простых запросов» три окна, позволяющие создавать разные характеристики запросов:
Таблицы/запросы - здесь можно выбрать таблицы на, основе которых нужно создать запрос.
Доступные поля - в этом окне приводятся все поля выбранной таблицы. Выбранные поля - сюда переносятся поля, которые надо включить в запрос. Задание 1.
- Выберите таблицу «Участок».
- В окне Доступные поля выделите поле Название.
- Нажмите клавишу «>», поле будет перенесено в окно Выбранные поля.
- Выберете таблицу «Экспликация».
- В окне Доступные поля выделяйте поочередно поля: пашня, сенокос, и все остальные виды угодий.
- Нажимая клавишу «>» , переносите поля из окна Доступные поля в окно Выбранные поля.
- Нажмите клавиши Далее во всех последующих окнах, при нажатии клавиши Готово - запрос готов.
Конструктор запросов
На практике часто требуется выбрать из таблиц часть данных, удовлетворяющих определенным критериям. Для решения таких задач предназначен конструктор запросов, при помощи которого вы сможете:
- Формировать сложные критерии для выбора записей из одной или нескольких таблиц.
- Указать поля, которые должны быть отображены для выбранных записей.
- Выполнить вычисления с использованием выбранных данных.
- Для вызова конструктора запросов перейдите на вкладку «Запросы», нажмите кнопку Создать, и в открывшемся окне выберите опцию «Конструктор».
Появится окно «Добавление таблицы» подобная таблица использовалась при определении связей между таблицами. Выберите в окне таблицы, в которых находятся нужные поля и закройте окно.
Для выбора нолей, которые должны присутствовать в запросе, вам необходимо отразить их в бланке запроса.
Для добавления в таблицу полей вы можете выбрать поле таблицы на схеме данных и дважды нажать кнопку мыши. Выбранное поле будет вставлено в доступный столбец в строке Поле. В строке Имя таблицы появится имя таблицы, а позиция Вывод на экран будет помечен.
Параметры запроса
До сих пор мы задавали условия отбора непосредственно в бланке окна запроса в режиме конструктора. Однако не всегда на этапе создания запроса можно решить какие именно значения должны быть включены в условия запроса. Вместо этого можно включить в запрос параметр, и в этом случае перед выполнением запроса программа будет каждый раз запрашивать конкретные условия отбора.
Чтобы установить параметр, вместо того чтобы вводить конкретные значения в строку Условия oтбора, нужно ввести в нее имя или фразу в квадратные скобки [ ].
То, что заключено в квадратные скобки , рассматривается как имя параметра. Это имя выводится в диалоговом окне при выполнении запроса, поэтому в качестве имени параметра следует использовать понятную фразу. В одном запросе можно использовать несколько параметров.
Например, изменим запрос, в котором из форм хозяйств запрашиваются крестьянские хозяйства. Создадим запрос, который будет запрашивать любой форму хозяйства.
Добавьте в поле Форма параметр [Форма хозяйствования].
Лекция 9
Что такое «Запрос по образцу»
Новый термин: Вопросы, формулируемые по отношению к базе данных, называется запросами.
В МS Ассеss для формирования запросов используется конструктор запросов и инструкция SELEKT языка МS Ассеss.
Что же такое «Запрос по образцу» ? Запрос по образцу - это интерактивное средство для выбора данных из одной или несколько таблиц. При формировании запросов вам необходимо указать критерии выборки записей в исходной таблице. При этом вместо того, чтобы печатать предложения на специальном языке, вы должны просто заполнить бланк запрос, который располагается в окне конструктора запросов. Метод формирования запросов путем заполнения бланка прост для изучения и понимания. Он способствует эффективному использованию возможностей М8 Ассезз пользователями, имеющим даже минимальный навык работы с приложением или не имеющим его вовсе.
Для создания простейших запросов вы можете использовать мастер запросов, который у вас последовательно запрашивает наименования таблиц, используемых в запросе, перечень полей таблиц и некоторые дополнительные параметры. Для создания более сложных запросов вам может понадобиться конструктор запросов, который является простым и наглядным средством создания достаточно сложных запросов.
Создание запросов с помощью мастера
Отличительной чертой МS Ассеss является наличие многочисленных и разнообразных мастеров, которые помогает вам при выполнении большинства действий, не требуя глубоких знаний в области баз данных.
Запросы также могут создаваться с помощью мастер. Для создания запроса в окне базы данных перейдите на вкладку «Запросы» и нажмите кнопку Создать. Откроется окно диалога, в котором вы можете выбрать опцию создания запросов с помощью конструктора запросов или один из мастеров создания запросов. Для знакомства с запросами выберем опцию Простой запрос. В этом случае вам будет предложено указать список таблиц и их полей, и на основании этих данных будет создан требуемый запрос.
Выберите опцию Простой запрос и нажмите кнопку ОК. Откроется окно мастера, в котором вы можете выбрать требуемые вам поля из одной или несколько таблиц. Если вы выбрали более одной таблицы, мастер автоматически связывает таблицы на основании схемы данных.
После выбора полей нажмите кнопку Далее и на экране появится следующее окно диалога мастера запросов, в котором вам необходимо выбрать признак подробного или итогового запроса. Иллюстрация в левой части окна диалога показывает вам различие между этими типами запросов. В данном случае нас не интересует итоговые значения, поэтому выберите опцию Подробный.
Замечание: Если вам потребуются итоговые значения, выберите опцию Итоговый, и. нажав кнопку Итоги, определите, какие итоговые значения вы собираетесь получить. Нажмите кнопку ОК для возврата в предыдущее окно мастера.
Нажмите кнопку «Далее» для продолжения процесса формирования запроса. Вы перейдете в завершающее окно мастера.
В этом окне вы можете задать имя запроса и выбрать опцию просмотра результатов запросов или перехода в окно конструктора запросов для добавления новых параметров запросов. Выберите опцию Открытие результатов выполнения запросов, и на экране откроется окно таблицы с результатами созданного вами запроса.
Неоспоримым преимуществом мастеров является возможность быстрого получения результатов при минимуме знаний о механизме его получения. В данном примере вы не имея представления об итоговых и многотабличных запросов, сумели получить интересующую вас информацию. Но, к сожалению, мастера запросов не позволяют указать условие выборки, критерий упорядочивания и более сложные, но и более интересные параметры выборки. Поэтому мы приступим к подобному рассмотрению конструктора запроса, который позволяет создать сложные запросов в интерактивном режиме. Окно конструктора запросов.
Для вызова конструктора запросов перейдите в окне базы данных на вкладки «Запросов» и нажмите кнопку Создать. В окне диалога «Новый запрос» выберите опцию Конструктор и нажмите кнопку ОК.
Ассезз предложит вам выбрать таблицу или запрос, на основе которых будет осуществляеться выборка. На этом этапе выбор таблицы или запроса не обязателен (вы можете добавить их и позже), но очевидно, что запрос должен выполняться, по крайней мере, на основе какой-либо таблицы или ранее созданного запроса. Выберите таблицу, нажмите кнопку Добавить и закройте окно диалога. На экране появится окно конструктора запросов, а в основном меню-команда Запрос.
Для формирования запроса в окне конструктора запросов необходимо выбрать таблицы, из которых осуществляется выборка, и поля результата запросов, указать критерии для выборки, группировка и упорядочивания данных.
Меню Запрос содержит команды добавления таблиц в окно конструктора запросов и удаления их из нее, выбора типа запроса, команду запуска запроса на выполнение и некоторые другие. Многие пункты этого меню дублируются кнопки на панели инструментов. Кроме этого вы, как всегда, может использовать, контекстное меню которое содержит имеющие смысл в данной области окна конструктора запросов пункты меню.
В верхней части окна конструктора запросов находится схема данных запросов. Эта схема очень сильно напоминает схему данных базы данных. В отличие от нее, данная схема содержит список таблиц, включенных в запрос, и отображает связи между ними.
В нижней части окна располагается бланк запроса. Каждая строка этого бланка выполняет определенную функцию:
-Поле. В этой строке помещаются те поля, которые вы используете для создания запроса, каждое в своей ячейке таблицы.
-Имя таблицы. Эта строка показывает вам, из какой таблицы (или запроса) выбрано данное поле.
- Сортировка. В этой строке вы указываете тип сортировки информации, возвращаемой в запросе, по возрастанию (от А до Я, от меньшего к большему, от более раннего к более позднему и т.д.) или по убыванию (от Я к А и т.д.)
- Вывод на экран. Если вы хотите, чтобы МS Ассеss показывал информацию, найденную в поле, пометьте эту ячейку, чтобы установить флажок просмотра поля. Если же поле используется только для задания условия выбора данных, которые возвращает ваш запрос, оставьте его пустым.
- Условие отбора. Это наиболее важная часть бланка запроса. В этой строке (и в строке, расположенной ниже ее) вы вводите ограничения поиска, задавая определенные условия, которые прр/ят|(о называть критерием поиска.
Мы кратко рассмотрели окно конструктора запросов, а теперь начнем подробное изучение принципов работы конструктора с создания простого запроса.
Создание простого запроса
Для создания запроса выполните следующие действия:
- В окне базы данных перейдите на вкладку «Запрос» и нажмите кнопку Создать.
- Откроется окно диалога «Добавление таблицы», в котором выберите таблицу и нажмите кнопку Добавить. Закройте овдо диалога.
- На экране открывается окно конструктора запросов, схема данных которого содержит таблицу, а бланк запроса пуст.
Добавление полей в бланк запросов.
Для выбора полей, которые должны присутствовать в результирующей таблице, вам необходимо отобразить их в бланке запросов.
В МS Ассеss существует два варианта выбора полей результирующей таблицы. Вы можете воспользоваться наиболее приемлемый с вашей точки зрения.
- Для добавления в таблицу отдельных полей вы можете выбирать поле таблицы на схеме данных и дважды нажать кнопку мыши. Выбранное поле будет вставлено в следующий доступный столбец в строке Поле бланка запроса. В строке Имя таблицы сразу же появится имя таблицы, а позиция Вывода на экран будет помечена.
- В МS Ассеss широко используется механизм перенести - и- оставить (drag – and - drop). Для использования этого механизма при выборе полей перейдите в таблицу в схеме данных, из которой вам надо выбрать поля. Выделите поля, которые вы собираетесь отобразить в запросе, нажмите кнопку мыши и, не отпуская ее, перенесите выбранные поля в бланк запроса.
Совет: Для выделения группы полей вы можете использовать мышь совместно с клавишами Shift или Ctrl. Для выбора полей, расположенных подряд выберите первое из требуемых полей таблицы и нажмите клавишу Shift. Затем, не отпуская клавишу, нажмите мышью последнее поле из группы расположенных подряд полей. При этом будут выделены все поля, расположенные между указанными полями. Для выбора отдельно расположенных полей вместо клавиши Shift используйте клавишу Ctrl. В этом случае при каждом нажатии кнопки мыши в группу выбираемых полей будет добавляться указанное поле.
Любым из приведенных выше способом перенесите в бланк запроса поля которые вы хотите. В некоторых случаях необходимо выбрать все поля исходной таблицы. Для этого в МS Ассеss существуют два способа, первый из которых состоит в выборе всех полей таблицы двойным нажатием мыши на строке заголовка и переносе выделенных полей в бланк запроса. В этом случае в бланке запроса появятся все поля исходной таблицы.
Возможно, вы обратили внимание на звездочку в списке полей таблицы. Вы можете использовать ее для пометки всех полей в таблице. Для этого нажмите на звездочку в первой строке списка полей и, удерживая кнопку мыши в нажатом состоянии, перенесите ее в бланк запроса. Имя поля в бланке запроса будет содержать имя таблицы, за которым следует точка, а затем символ звездочки, что означает, что были выбраны все поля исходный таблицы. В отличие от первого способа, в режиме конструктора вы не увидите каждое поле в отдельном столбце, но после запуска запроса все они будут выбраны.
Замечание: У метода переноса звездочка есть одно большое преимущество. Если вы добавите в таблицу новое поле после того, как вы создали и запустили запрос, ваш запрос автоматически изменится, включив в себя новое поле. При использовании первого способа запрос выбирает только те поля, которые были перенесены в бланк запроса.
Удаление полей из бланка запроса
Вы по ошибке можете добавить в бланк запроса лишнее поле или решить, что определенное поле вам не имеет смысла отображать в результирующей таблице. Для удавления данного поля из запроса нажмите на область выбора столбца, а затем клавишу Delet. Поле исчезнет.
Внимание: Прежде чем удалить поле, удостоверьтесь, что оно не используется в вашем запросе для определения условия выборки. В этом случае для запрета отображения поля в результирующей таблице снимите флажок Вывода на экран.
Изменение порядка полей
Порядок полей в бланк запроса определяется порядок появления их в результирующей 'таблице. Для того чтобы изменить расположение поля в этом списке выполните следующие действия:
1. Установите указатель мыши на область столбца, которой располагается прямо над названием поля. Когда указатель изменит вид на стрелку, нажмите кнопку, чтобы выделить столбец.
2. Нажмите и удерживайте кнопку мыши в этом положении. На конец указателя появится прямоугольник.
3. Перемещайте столбец в требуемом направлении. Толстая вертикальная линия покажет его текущее положение.
4. Отпустите кнопку, когда толстая вертикальная линия окажется в требуемом месте. Поле будет перемещено в новое место.
Иногда не сразу удается выделить столбец для его перемещения. Убедитесь в том, вы нажмите область выбора столбца (маленький прямоугольник, который находится прямо над названием поля). Это единственное место, за которое вы можете захватить столбец для переноса.
Сортировка результатов выборки
Сортировка результатов выборки в МS Ассеss выполняется достаточно просто. Вы можете сортировать результаты выборки по одному или нескольким полям так же, как вы это делали при сортировке таблицы.
Порядок сортировки записей результирующей таблицы определяется порядком следования полей в банке запроса критерием упорядочивания отдельных полей. Перемещение полей для изменения порядка их расположения в банке запроса мы рассмотрели в предыдущем разделе. Чтобы отсортировать данные в отдельном поле, перейдите на строку Сортировка требуемого поля из раскрывающего списка выберите значение По возрастанию или По убыванию. Если вы решили отказаться от сортировки по полю, выберите значение Отсутствует. Для сортировки по нескольким полям последовательно переходите, на сортируемые поля установите для них критерий сортировки. В отличие от сортировки в режиме таблицы, вы увидите результат только после выполнения запроса.
Запуск запроса
Мы закон1!,тли создание простого запроса, и наступило время запустить его на выполнение. Нажмите кнопку Запуск на панели инструментов или выполнение команду Запрос / Запуск. Результат выполнения вашего запроса появится в режиме таблицы.
Лекция 10
Группировки
Группировка позволяет получить вычисляемую информацию по группам записей в таблицах.
Пример 1
Вычислить площади угодий по районам. Для этого создается запрос, в который включаются: названия районов, площади пашни, сенокосов, пастбищ и других угодий, по которым мы хотим получить площади по каждому району.
В бланк запроса вставляется строка «Групповые операции» нажатием на кнопку «Групповые операции» на панели инструментов.
В строке «Групповые операции» столбца «Район» установите значение «Группировка», а для столбцов пашня, сенокос, пастбища и др. установите значение 8ит. В результате площади угодий будут просуммированы по районам.
Вычисления по формулам
В запросе можно вычислить значение по одному или нескольким полям таблицы.
Результаты вычислений не запоминаются в исходной таблице. Вместо этого, вычисления выполняются каждый раз при запуске запроса, поэтому результаты всегда представляют текущее содержание базы данных. Нельзя редактировать результаты вычислений.
В бланке запроса создается новое поле, в которое будет выводиться результат расчета. Формула для расчетов создается с помощью «Построителя выражений».
Пример 1.
Вычислить сумму площадей сельскохозяйственных угодий по каждому земельному участку.
- Откройте окно конструктора запросов и добавьте в бланк конструктора запросов поля: пашня, сенокос...
- Для определения суммы угодий перейдите в строку Поле пустого столбца бланка запроса и нажмите кнопку «Построитель» на панели инструментов или выберите эту команду из меню. На экране откроется окно построителя выражений.
- Раскройте папку таблицы. Выберите таблицу «Экспликация». Список расположенный правее будет содержать перечень всех полей указанной таблицы. Выберите из этого списка поле «Пашня» и нажмите кнопку вставить окна построителя. Выбранное поле будет добавлено в область выражения.
- Из приведенного списка добавить знак сложения (+).
- Аналогичным образом добавьте другие угодья и нажмите кнопку «ОК», выражение будет перенесено в бланк запроса.
- Автоматически задается имя: Выражение 1:[пашня]+... Его можно изменить в строке Поле. При этом следует сохранить двоеточие и выражение в квадратных скобках. В данном случае название следует дать «Всего с.х. угодий».
Задание. Добавить в предыдущий запрос вычисляемое поле «Процент пашни в площади с.х. угодий.
Условия отбора
Если необходимы данные не по всем записям, а только по определенным группам, в запросе задаются условия отбора.
Пример 1. Создать запрос, в котором дать экспликацию земель по всем крестьянских хозяйств в одном из районов.
- Создать запрос в режиме конструктора.
- Добавить таблицы: район, квартал, участок, регистрация, экспликация. Все таблицы должны быть связаны между собой.
- В бланк запроса занесите поля: название участка, название формы, пашня, сенокос и др.
- В строке «Условия отбора» запишите «крестьянские хозяйства».
- Сохраните запрос и дайте ему название, например, «Отбор крестьянских хозяйств».
Условия отбора: больше, меньше, между.
Можно использовать в условиях отбора знаки < и > , например, для выбора хозяйств с определенной площадью.
Оператор Between (между) позволяет задать диапазон значений. Например, можно в запросе вывести список хозяйств с площадью пашни в диапазоне больше 100 га и меньше 500 га (Between 100 and 500).
Between 100 and 500 означает тоже, что и логическое >=100 and<=500
Отбор по дате
Для того чтобы задать условия по дате (организации хозяйства) значение даты должно быть заключено между символами (#).
Например, чтобы выбрать хозяйства организованные 1.1.92, следует задать условие #1.1.92#.
Для того, чтобы определить хозяйства организованные в период с 1.1.91 по 1.1.93, в условии отбора следует записать Between #1.1.91# and #1.1.93#