Партнерка на США и Канаду по недвижимости, выплаты в крипто

  • 30% recurring commission
  • Выплаты в USDT
  • Вывод каждую неделю
  • Комиссия до 5 лет за каждого referral

A = «значение»

A > «значение»

A = «значение» AND B = «значение»

A = «значение» AND B < «значение»

A = «значение» AND B = «значение» AND C >«значение».

а недопустимыми являются следующие критерии поиска:

A > «значение» AND B = «значение»

A > «значение» AND B > «значение»

A > «значение» AND B = «значение» AND C >«значение».

B = «значение» AND C >«значение».

A = «значение» AND C >«значение».

Возможность поиска данных по значению одного из полей обеспечивает также команда Правка4Найти. Поиск осуществляется в выделенном столбце по образцу. При задании образца можно использовать символы * и ?, образец может быть только частью значения поля, регистр может учитываться или нет. Поиск может осуществляться с начала таблицы или ее конца, с текущей строки, вверх или вниз. Результатом поиска является перемещение курсора на первую строку таблицы, соответствующую условию поиска. Для поиска следующей строки, соответствующей заданному условию, надо щелкнуть по кнопке Найти далее.

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

Запустите MS Access. Выберите строку Файл4Открыть... и укажите имя БД teach. Выберите таблицу PR_DIS в списке таблиц и перейдите в режим таблицы. Обратите внимание на порядок строк в таблице.

1.  Сортировка таблицы.

l  Выполните сортировку таблицы по полю Ф. И.О., для этого:

l  Щелкните в любом месте столбца FIO;

l  Щелкните на панели инструментов по пиктограмме Сортировка по возрастанию.

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

НЕ нашли? Не то? Что вы ищете?

l  Выполните команду Записи4Фильтр4Расширенный фильтр.

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

l  В этом же столбце щелкните строкой ниже и установите для сортировки по первому полю порядок по возрастанию.

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

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

l  Выполните команду Фильтр4Применить фильтр и убедитесь в правильности полученного результата.

l  Удалите фильтр, выполнив команду Фильтр4Удалить фильтр. Обратите внимание на то, что порядок строк таблицы вернулся к варианту, предшествовавшему применению фильтра.

l  Перетащите столбцы таблицы таким образом, чтобы поля FAK, FIO и DIS следовали друг за другом в указанном порядке.

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

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

l  Выполните команду Записи4Фильтр4Расширенный фильтр.

l  В бланк фильтра добавьте новые поля Nagr и Categ. Сортировка по ним не нужна.

l  В бланке фильтра в строке Условие отбора для столбца Nagr введите значение > 700, а для столбца Categ - “доцент”.

l  Сохраните фильтр командой Файл4Сохранить как запрос. Предлагаемое для нового запроса имя Запрос2 менять не надо.

l  Выполните команду Фильтр4Применить фильтр и убедитесь в том, что результатом являются 2 записи о доцентах Матвееве и Соколовой.

l  Вернитесь к первоначальному варианту фильтра, для этого, находясь в окне БД, щелкните по корешку Запросы и откройте Запрос1. Убедитесь, что результатом применения этого фильтра будет вся таблица, упорядоченная сначала по названию факультетов, а затем для строк, у которых названия факультетов совпадают, по Ф. И.О. преподавателей, работающих на факультете. Третий уровень сортировки – это сортировка для каждого преподавателя по кодам дисциплин, которые он преподает.

2.  Индексация.

l  Создание простого индекса, содержащего только одно поле, например, поле FIO.

l  Откройте таблицу в режиме конструктора и выберите поле FIO.

l  Выберите среди его свойств строку "Индексированное поле" и выберите из развернувшегося списка значение “ДА [Допускаются совпадения]”.

l  Установите такие же индексы по полю Nagr и по полю FAK.

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

l  Создание составного индекса.

l  В режиме конструктора выполните команду Вид4Индексы.

l  В окне Индексы в пустую строку столбца Индекс введите имя составного индекса FakDis, а в столбец Имя поля последовательно введите имена полей составного индекса: сначала FAK, а в следующей строке DIS.

l  Против каждого поля в столбце Порядок сортировки укажите По возрастанию.

l  В области "Свойства индекса" укажите, что индекс не является уникальным и пустые поля пропускать не надо.

l  Закройте окно индексов и сохраните определение таблицы.

3.  Поиск по образцу.

Пусть надо найти всех преподавателей, работающих на ФАВТ.

l  Выделите столбец Факультет или установите курсор в одну из ячеек этого столбца.

l  Выполните команду Правка4Найти.

l  В окне поиска задайте Образец поиска - ФАВТ.

l  В списке Совпадение выберите Поля целиком.

l  Установите индикатор С учетом регистра и для Access 97 индикатор Только в текущем поле. В Access 2000 вместо установки последнего индикатора надо убедиться в правильности установки, выбранной из списка Поиск в. Если установлено не то поле, в котором вы собираетесь искать заданное в образце значение, это означает, что курсор в таблице указывает на другое поле. В этом случае надо закрыть окно поиска, вернуться к открытой таблице и установите курсор в одну из ячеек нужного столбца.

l  Щелкните по кнопке Найти (Access 97) или Найти далее (Access 2000). Первая от начала таблицы запись со значением ФАВТ в поле Факультет будет маркирована.

l  Для поиска следующей записи с тем же значением в поле Факультет щелкните по кнопке Найти далее.

4.  Поиск по нескольким полям.

Если надо найти все записи о доцентах и ассистентах кандидатах наук, работающих на ФАВТ, то потребуется применение фильтра.

l  Откройте таблицу PR_DIS, а затем окно фильтра, выполнив команду Записи4Фильтр4Расширенный фильтр.

l  Установите порядок сортировки по возрастанию значения в поле Ф. И.О.

l  В строке Условие отбора введите для поля Categ значение “доцент” or “асс. к.н.” и для поля FAK значение ФАВТ.

l  Выполните команду Фильтр4Применить фильтр, чтобы увидеть результат из 4-х записей.

l  Поменяйте в строке Условие отбора для поля FAK значение ФАВТ на ЭФФ. Результат должен содержать 2 записи.

Задание для самостоятельной работы.

Самостоятельно освойте работу с простым фильтром. Для перехода в окно создания простого фильтра надо воспользоваться командой Записи4Фильтр4Изменить фильтр. С помощью простого фильтра удобно задавать условие равенства значения того или иного поля значению, выбранному из списка, но можно использовать при задании условия и операции сравнения (<>, >, >=, <, <=). Найдите, используя простой фильтр, всех доцентов с нагрузкой больше 700 часов, а затем выполните задания пункта 4, используя простой, а не расширенный фильтр. Обратите внимание на наличие в окне простого фильтра корешка «или», который позволяет задать несколько строк с условиями. Строки связываются между собой операцией OR. Условия, относящиеся к одной строке, связаны операцией AND.

Лабораторная работа 5: Импорт, экспорт и присоединение данных

Цель работы

Изучение возможности обмена данными между разными базами Access,.а также возможности работы с данными в форматах других СУБД, электронных таблиц, текстовых файлов.

Общие сведения

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

Импорт – это копирование таблиц из различных источников с преобразованием их формата к формату Access. Импортированная таблица физически помещается в файл БД Access. Импорт целесообразно выполнять, если:

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

2.  Данные, которые импортируются, не используются совместно с пользователями других приложений.

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

4.  Необходимо обеспечить максимальную эффективность работы с данными.

Присоединение – это работа из БД Access с данными другой БД Access или данными другого формата как со своими. При этом скорость работы будет невысока. Присоединение целесообразно выполнять, если:

1.  Таблица превышает по размеру возможности БД Access (1 Гб).

2.  Данные таблицы часто меняются пользователями БД – источника

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

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

Особенностью присоединенной таблицы является то, что вы можете вносить данные в таблицу, и сделанные вами изменения будут фиксироваться и в БД – источнике, но вы не можете существенно изменить структуру таблицы. Например, добавить или удалить какие-то поля, изменить первичный ключ. Хотя, для того чтобы сделать таблицу более удобной в использовании, вы можете изменить, маску ввода, формат и подпись поля. Сделанные изменения не повлияют на структуру БД – источника, а изменения структуры БД – источника отразятся в БД – приемнике.

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

Каждая СУБД содержит свой список импорта – экспорта, то есть. перечень систем, с которыми возможен непосредственный обмен данными. При обмене данными между системами, не входящими в списки импорта – экспорта друг друга данные следует передавать через файл какого-то другого, общего для них посредника или через текстовый файл.

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

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

1.  Импорт текстовых файлов в Access.

l  Создайте в редакторе Word для Windows или другом известном вам редакторе текстов следующую таблицу:

Код предмета

Название

Семестр

Кол-во часов

БДиБЗ

Базы данных и базы знаний

4

32

ТУ

Теория управления

3

16

ОП

Основы программирования

1

?

ОСРВ

Операционные системы реального времени

2

?

l  Преобразуйте таблицу в текст, разделенный табуляторами.

l  Сохраните таблицу под именем PRED в вашем каталоге как текст, выбрав из списка типов файлов «Только текст», закройте файл и выйдите из редактора.

l  Запустите Access и выберите команду Файл4Создать. Создайте БД с именем DIS.

l  Выполните команду Файл4Внешние данные4Импорт и в списке типов файлов выберите «Текстовые файлы».

l  Из развернувшегося списка выберите файл нужного формата с именем PRED.

l  В окне Импорт текста :

·  Выберите поля «с разделителями» и щелкните по кнопке Далее.

·  Установите в качестве разделителя полей TAB и щелкните по индикатору «Первая строка содержит имена полей», а затем по кнопке Далее.

·  Сохраните данные в новой таблице и щелкните Далее.

·  Для поля Код предмета измените индекс на «Да(Совпадения не допускаются)», для поля Семестр - тип данных на Байт, для поля Кол-во часов - тип данных на Байт, щелкните Далее.

·  Определите в качестве ключевого поля Код предмета, щелкните Далее.

·  Задайте для таблицы, в которую производится импорт, имя PRED, щелкните по кнопке Готово.

l  Получив сообщение о завершении импорта в PRED и об обнаруженных при этом ошибках, проанализируйте содержимое таблицы Ошибки Импорта, исправьте ошибки в таблице Pred.

2.  Экспорт таблицы БД Access в электронную таблицу.

l  Находясь в окне БД DIS, подсветите таблицу PRED и выполните команду Файл4Экспорт с установкой «во внешнем файле или базе данных». Перейдите в свой каталог, оставьте имя файла PRED, предлагаемое по умолчанию. В списке типов файлов выберите Microsoft Excel 97-2000, щелкните по кнопке Экспорт (для Access 97) или по кнопке Сохранить (для Access 2000).

l  Завершите сеанс работы с Access.

l  Запустите Excel. Откройте таблицу PRED. xls и убедитесь, что экспорт завершился успешно.

3.  Присоединение таблиц Microsoft Access.

Пусть требуется присоединить к БД Teach таблицу PRED БД DIS.

l  Откройте БД Teach и выполните команду Файл4Внешние данные4Связь с таблицами

l  В окне Связь выберите из списка типов файлов строку Microsoft Access, затем выберите БД DIS. mdb. и щелкните по кнопке Связь.

l  В открывшемся окне Связь с таблицами выберите (подсветите) единственную таблицу PRED и щелкните по кнопке ОК.

l  Если присоединение прошло успешно, в списке таблиц БД Teach появится имя PRED со стрелкой слева.

l  Переименуйте присоединенную таблицу в Predmet и откройте ее в режиме конструктора.

l  Измените определение поля Кол-во часов, присвоив его свойству «Подпись поля» значение «Часов»

l  Попробуйте добавить проверку условия на значение в определение поля Семестр, установив диапазон от 1 до 11, а также текст сообщения об ошибке.

l  Попытайтесь удалить поле Кол-во часов.

l  Перейдите в режим таблицы и добавьте строку:

ВТвИР, Вычислительная техника в инженерных и экономических расчетах, 3, 60

l  Сохраните внесенные изменения и перейдите к БД DIS. Посмотрите, как отразились изменения, сделанные в присоединенной таблице, на исходной таблице.

l  Измените структуру таблицы PRED в БД DIS, добавив поле счетчика и изменив размер поля Название на 75.

l  Вернитесь в БД Teach и посмотрите, отразились ли структурные изменения таблицы - источника на присоединенной таблице.

l  Отсоедините таблицу Predmet, выполнив команду Правка4Удалить или нажав Del, когда она подсвечена в окне БД Teach. Проверьте, что исходная таблица PRED осталась в БД DIS.

Задание для самостоятельной работы.

Иногда требуется разделить данные, хранящиеся в одном столбце таблицы, на два и более столбцов. Например, столбец Адрес таблицы Адрес базы данных Студенты_Занятия содержит названия улиц, а также номера домов и квартир. Если надо выявить всех студентов, живущих на определенной улице, то проще сделать это, предварительно выделив названия улиц в отдельный столбец. Такая операция легко осуществляется в Excel с помощью команды Данные4Текст по столбцам…. Выполните такое разбиение, предварительно экспортировав таблицу Адрес из БД Студенты_Занятия в Excel. В новой таблице столбец Адрес должен быть разбит на два столбца – Улица, ДомКвартира или на три столбца - Улица, Дом, Квартира. Полученную таким образом таблицу назовите Адрес1 и импортируйте в БД Студенты_Занятия.

Лабораторная работа 6: Создание запросов на языке QBE.

Цель работы

Знакомство с языком QBE и его основными возможностями по извлечению и модификации данных, хранящихся в БД.

Общие сведения.

Информация, хранящаяся в БД, может использоваться различными категориями пользователей. Разным пользователям нужна разная информация. Даже одному и тому же пользователю в разные моменты времени могут потребоваться разные сведения. Критерий отбора интересующих пользователя данных и способ их преобразования к виду, удобному для восприятия, формируется при помощи запроса к БД. Существуют два стандарта языка запроса к БД: это язык запросов по образцу QBE – Query By Example и язык структурированных запросов SQL – Structured Query Language. Оба эти языка предназначены не для разработки прикладных программ, а для манипулирования базами данных. И тот и другой языки позволяют осуществлять выборку из БД, создавать новые таблицы БД, удалять, добавлять и изменять хранящиеся в таблицах данные. Языки SQL и QBE предназначены для одних и тех же целей. Но, если язык SQL является языком профессионалов, это командный язык, то язык QBE ориентирован на неквалифицированного пользователя, это язык визуального представления операции отбора или модификации данных.

В СУБД Access выбрать данные из одной таблицы, отвечающие заданному условию, можно и при помощи фильтра (смотри лабораторную работу 4). С помощью запроса можно выбрать нужные данные не только из одной, но и одновременно из нескольких таблиц БД, произведя при этом необходимые вычисления. Данные, выбранные с помощью запроса, можно рассматривать как виртуальную таблицу. Эту таблицу можно просматривать, использовать в новом запросе, печатать, частично изменять. Поскольку изменения фактически вносятся в таблицы, на базе которых построен запрос, то существуют некоторые ограничения. Например, нельзя менять значение вычисляемого поля или производить изменения, которые влияют сразу на несколько строк базовой таблицы. Если результатом запроса является виртуальная таблица, представляющая собой совокупность таблиц, связанных отношением 1:n, нельзя обновлять ключевые поля со стороны отношения 1.

Запросы на языке QBE создаются в окне конструктора запросов, можно также воспользоваться услугами Мастера запросов. Окно конструктора запросов содержит набор таблиц и/или запросов, на основе которых строится запрос, и бланк для создания запроса на QBE. Таблицы и запросы могут быть добавлены при необходимости в окно запросов. Каждый столбец бланка относится к одному полю, которое может быть и вычисляемым, то есть содержать арифметическое выражение. Поля выбираются из раскрывающихся списков или перетаскиваются мышью из таблиц. Количество строк в бланке запроса зависит от вида запроса. В простейшем случае (по умолчанию) строк 5: «Поле», «Сортировка», «Вывод на экран», «Условие отбора», «или».

В строке «Поле» указываются все поля, участвующие в формировании запроса. Это могут быть, с одной стороны, поля, которые попадут в результат запроса, а с другой, - поля, которые нужны только для задания условия отбора. Поле может быть и вычисляемым. Вычисляемое поле задается арифметическим выражением, которое может включать в качестве операндов имена полей, константы, переменные и функции, а в качестве операторов арифметические операции "+", "-", "*", "/", а также операцию деления нацело – "\", возведения в степень – "^", вычисления остатка от деления – MOD и конкатенации строк – "&". При построении сложных выражений рекомендуется использовать построитель выражений.

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

В строке «Вывод на экран» устанавливаются флажки для тех полей, которые должны попасть в результат запроса. Это обычно не все поля, поскольку часть полей, присутствующих в бланке запроса, используется только для задания условия отбора записей.

Условие отбора представляет собой логическое выражение. При задании логических выражений кроме операторов AND, OR, NOT вы можете использовать операторы сравнения и предикаты BETWEEN, IN и LIKE. По отношению к условиям отбора, находящимся в одной строке и относящимся каждое к своему полю, выполняется операция AND ( логическое "и"). Строки связаны друг с другом оператором OR (логическое "или").

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

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

Язык QBE имеет средство группировки данных. Цель группировки – объединить данные на основе одинакового значения поля группировки с целью упрощения их последующего визуального анализа. Над данными, входящими в группу, обычно выполняется какая-нибудь операция, при этом используются функции агрегирования. К таким функциям относятся: функция подсчета количества записей - COUNT(), суммирования значений столбца - SUM(), вычисления среднего значения - AVG(), вычисления минимального и максимального значений - MIN(), MAX() и другие. Запрос с группировкой называется итоговым, так как группировка дает возможность получить на выходе набор строк, включающий по одной строке для каждого уникального значения поля запроса, для которого она установлена. Для получения итоговых значений установку «Группировка» в строке «Групповая операция» следует поменять на нужную функцию агрегирования, выбрав ее из списка. Кроме 9 стандартных функций агрегирования список содержит также значение «Выражение», что позволяет использовать для подведения итогов более сложные выражения. Само выражение задается в строке «Поле». В группы могут включаться не все строки таблицы, а только удовлетворяющие определенным условиям, заданным в строке «Условие отбора». Строка «Групповая операция» при этом должна содержать значение «Группировка», установленное выбором из списка. Кроме того, что в группу можно включать не все строки, в результат запроса можно включать не все группы, а только те, для которых групповое значение удовлетворяет заданному условию. В этом случае условие задается в строке «Условие отбора», а в строке «Групповая операция» должна быть установка «Условие». Следует помнить, что результаты итоговых запросов не могут быть изменены.

Специальным типом итогового запроса является перекрестный запрос. Итоговые значения представляются в виде таблицы, напоминающей электронную. Обычно в таких запросах столбцы – это время в тех или иных единицах измерения, а на пересечении строк и столбцов находятся деньги или количество чего–нибудь. В таком виде можно, например, представить объем продаж по годам или месяцам для каждого вида изделий или еженедельную прибыль по каждому из филиалов торгующей организации. При создании перекрестного запроса в бланке QBE появляется новая строка – «Перекрестная таблица». Для каждого поля, участвующего в построении перекрестного запроса, может быть выбрана одна из четырех установок: «Заголовки строк», «Заголовки столбцов», «Значения», «Не выводить». Поля заголовков строк или столбцов должны иметь в строке «Групповая операция» установку «Группировка», а поле значения – выражение для вычисления группового значения. Часть полей используются только для задания условия отбора, в строке «Перекрестная таблица» они имеют установку «Не выводить», а в строке «Групповая операция» - установку «Условие». Само условие задается в строке «Условие отбора». Условие отбора может быть введено и для полей, используемых в качестве заголовков.

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

До сих пор речь шла только о запросах, позволяющих извлекать нужную информацию из БД. Такие запросы называются запросами – выборками. Язык QBE предоставляет также возможность модификации данных с помощью запросов – действий. К запросам – действиям относятся: запрос на обновление, запрос на удаление и запрос на добавление.

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

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

Запрос на добавление используется для помещения в таблицу данных или их части, отобранной по некоторому условию, из другой таблицы этой или другой БД. Для создания такого запроса надо, находясь в БД, содержащей таблицу, из которой будут добавлены данные, открыть окно создания нового запроса. В окне добавления таблиц выбрать таблицу, данные из которой будут добавляться, и выполнить команду Запрос/Добавление, указав имя таблицы и БД, куда будут добавляться данные. Бланк запроса на добавление содержит поля таблицы – источника. В строке «Добавление» следует указать (выбрать из списка) имена полей таблицы – приемника. Если в таблице – приемнике есть поля, отсутствующие в источнике, они заполнятся значениями по умолчанию, но можно указать и другое значение в виде константы, поместив ее в строку «Поле».

К запросам – действиям относится и запрос на создание таблицы, уже рассмотренный нами в лабораторной работе 2. Вы, наверное, обратили внимание, что при создании новой таблицы Access копирует не все, а только основные свойства полей.

Запросы, созданные на языке QBE, транслируются на язык SQL и в таком виде хранятся в БД. Посмотреть, как выглядит запрос на языке SQL, и даже модифицировать его можно, перейдя из режима просмотра результата запроса (режим таблицы) или режима конструирования запроса на QBE в режим SQL. Изучение языка SQL выходит, однако, за рамки этой книги.

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

5.  Работа с данными при помощи запроса - выборки.

Запустите Access. Откройте БД Teach. Щелкните по корешку Запрос, а затем по кнопке Создать и выберите способ создание запроса в режиме конструктора, без помощи Мастера.

1.1  Создание запроса на основе одной таблицы БД.

Пусть надо выяснить, какие дисциплины и в каких группах ведет преподаватель Из списка таблиц в окне Добавление таблицы выберите DIS_GR и щелкните по кнопке Добавить. Закройте окно. В окне запроса на выборку:

l  Перетащите из таблицы или выберите из раскрывающихся списков в бланке QBE запроса последовательно поля PR, DIS, GR.

l  - В условие отбора для поля PR введите “”.

l  Закройте окно конструирования запроса, сохраните запрос под именем Nik.

l  Выполните запрос, дважды щелкнув по его имени в списке запросов, убедитесь, что результирующая таблица содержит 3 столбца: Ф. И.О., Дисциплина, Группа и 2 строки.

l  Перейдите в режим конструирования запроса, щелкните по индикатору «Вывод на экран» поля PR, чтобы сбросить его, и установите сортировку по возрастанию для поля DIS.

l  Сохраните запрос под именем Nik2. Для этого выполните команду Файл4Сохранить как.

l  Выполните запрос Nik2, оцените результат.

l  Перейдите еще раз в режим конструирования запроса Nik и поменяйте значение в строке Условие отбора для поля PR на параметр [ФИО преподавателя?].

l  Сохраните запрос под именем PR.

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

1.2  Создание итогового запроса.

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

l  Щелкните по корешку Запрос. Выберите ручной (без помощи Мастера) способ создания нового запроса, из списка таблиц выберите PREP. Щелкните по кнопке Добавить и закройте окно добавления.

l  Оказавшись в окне конструирования запроса, поместите в бланк QBE запроса 2 поля: Categ и Nagr.

l  Щелкните по кнопке å панели инструментов. В бланке QBE запроса должна появиться новая строка – «Групповая операция».

l  Для поля Categ оставьте в этой строке установку по умолчанию (Группировка), а для поля Nagr выберите из списка функцию агрегирования MAX.

l  Измените свойство «Подпись поля» для поля Nagr на «Максимальная нагрузка» с помощью команды Вид4Свойства.

l  Сохраните запрос под именем QGR1 и выполните его.

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

l  Вместо MAX для поля Nagr выберите Выражение и введите в строку «поле» выражение

l  MAX([Nagr])-MIN([Nagr]).

l  Для поля Categ в строке «Групповая операция» должно быть «Группировка», а в строке Условие отбора введите <> “профессор”.

l  Сохраните запрос под именем QGR2, выполните его и оцените результаты.

1.3  Создание многотабличного запроса.

Пусть требуется получить ответ на вопрос, какие преподаватели ведут дисциплину ОП и имеют нагрузку не более 700 часов. Для создания такого запроса потребуются таблицы PREP и DIS_GR.

l  Щелкните по корешку Запрос, затем по кнопке Создать и выберите строку Конструктор.

l  В открывшемся окне добавления таблицы выберите таблицы PREP и DIS_GR. Проверьте правильность установки связей между ними. Связь должна быть 1:n.

l  Перетащите в бланк QBE запроса поля FIO и Nagr из таблицы PREP и поле DIS из таблицы DIS_GR.

l  Щелкните по индикатору «Вывод на экран» поля DIS, чтобы сбросить флажок, поле не должно появиться в результате запроса.

l  В строке «Условие отбора» для поля Nagr укажите <=700, а для поля DIS введите “ОП”.

l  Закройте окно конструирования запроса, сохраните запрос под именем MT1.

l  Выполните запрос. Результат должен содержать три строки.

1.4  Использование Мастера запросов.

1.4.1  Найдите с помощью Мастера всех преподавателей, которые ничего не преподают. Для этого:

l  Добавьте в таблицу PREP 2-3 строки с новыми фамилиями.

l  В окне создания запроса выберите из списка мастеров «Записи без подчиненных».

l  Укажите, что таблица, в которой исследуются записи, - это PREP, а подчиненная ей таблица - DIS_GR.

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

l  Попросите Мастера показать вам созданный запрос в режиме конструктора (Изменение структуры запроса), а затем выполните его. Результатом запроса должен быть список преподавателей с указанием их категорий, который вы внесли в таблицу PREP перед началом работы с Мастером.

1.4.2  Создайте с помощью Мастера перекрестный запрос на базе таблицы Pred, которая находится в БД Dis. Результатом такого запроса должна быть таблица, названия строк которой – это названия предметов, а названия столбцов – номера семестров, на пересечении строк и столбцов должно находиться количество часов, отводимых на данный предмет в данном семестре.

l  Импортируйте таблицу Pred в БД Teach.

l  Дополните ее данными таким образом, чтобы некоторые предметы читались в нескольких семестрах.

l  В окне БД выберите корешок Запросы и щелкните по кнопке Создать.

l  В списке типов запросов выберите Перекрестный запрос.

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

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

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

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

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5