Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Запросы SQL

 

4. Разработка запросов

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

Добавление или удаление таблиц, запросов и полей

Расчет значений

Ограничение результатов с помощью условий отбора

Сортировка записей

Добавление или удаление таблиц, запросов и полей

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

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

Чтобы отобразить поле в результатах запроса, перетащите это поле из списка полей в столбец в бланке запроса.

Расчет значений

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

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

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

Ограничение результатов с помощью условий отбора

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

Чтобы ограничить число записей в результатах запроса, введите условия в одно или несколько полей.

Для ввода альтернативных условий для одного поля воспользуйтесь строкой Или.

Введите условия для разных полей. Например, для заказов, сделанных между 1.6.01 и 15.6.01...

... можно рассчитать итоговые суммы, но отобразить только превышающие 100 000 р.

Сортировка записей

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

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

Задайте сортировку по возрастанию или по убыванию или удалите условие сортировки.

Использование знака звездочки (*) в бланке запроса

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

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

При одновременном перетаскивании в бланк нескольких полей Microsoft Access помещает каждое поле в отдельный столбец. Если перетащить в бланк знак звездочки, Microsoft Access помещает имя таблицы или запроса в один столбец и добавляет к имени точку и звездочку (например, Типы.*). Оба эти действия приводят к одинаковому результату.

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

 

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

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

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

Элементы выражения. В нижней части окна построителя находятся три поля.

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

В среднем поле задаются определенные элементы или типы элементов для папки, заданной в левом поле. Например, если выбрать в левом поле Встроенные функции, то в среднем поле появится список всех типов функций Microsoft Access.

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

Примечание. При вставке идентификатора в выражение построитель вставляет только те его части, которые требуются в текущем контексте. Например, при запуске построителя выражений из окна свойств формы «Клиенты» и вставке идентификатора для свойства Вывод на экран (Visible) будет вставлено только имя свойства Visible. При использовании данного выражения вне контекста формы необходимо включать полный идентификатор: Forms![Клиенты].Visible

 

 

5. Создание связей между таблицами

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

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

Чтобы определить связи, необходимо использовать команду Сервис->Схема данных (кнопка ). Если связь определяется впервые в базе данных, то Access откроет пустое окно Схема данных, а затем выведет на экран окно диалога Добавление таблицы. В этом окне необходимо выделить нужные таблицы и нажать кнопку Добавить. В нашем случае в окно схемы данных надо добавить все три таблицы. Кнопка Закрыть закрывает окно диалога Добавление таблицы (данное окно можно вызвать по нажатию кнопки ). После этого окно Схемы данных должно выглядеть примерно так, как показано на рис. 6.4 (кроме линий соединения). Чтобы установить связь между таблицами тВУЗы и тСвязьАбВУЗ, надо выделить поле КодВУЗа в таблице тВУЗы (щелкнуть левой кнопкой «мыши»), перетащить и опустить его на поле КодВУЗа в таблице тСвязьАбВУЗ. Аналогично устанавливается связь между двумя другими таблицами.

Рис. 6.4. Окно Схема данных, показывающее связи между основными таблицами в базе данных «Профконсультант»

Когда вы отпустите кнопку мыши, Microsoft Access откроет окно диалога Связи, представленное на рис. 6.5.

Рис. 6.5. Окно диалога Связи

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

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

После нажатия кнопки Создать Access создаст связь и нарисует линию между двумя таблицами, указывающую на наличие связи между ними. Заметьте, когда вы просите обеспечить целостность данных, Access изображает на конце линии у таблицы, находящейся на стороне отношения «один», цифру 1, а на другом конце у таблицы со стороны отношения «многие» – символ бесконечности. Чтобы удалить связь, щелкните по ее линии и нажмите клавишу Del. Если вы хотите отредактировать или изменить существующую связь, дважды щелкните по соответствующей линии, чтобы снова открыть окно диалога Связи.

 

<== предыдущая лекция | следующая лекция ==>
Запросы на изменение | Вопрос 1. Функционально-структурная организация ЭВМ
Поделиться с друзьями:


Дата добавления: 2014-01-15; Просмотров: 672; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.015 сек.