Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Запросы SQL и их использование

Запрос SQL - это запрос, создаваемый при помощи инструкций SQL. Примерами запросов SQL могут служить запросы на объединение, запросы к серверу, перекрестные и подчиненные запросы.

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

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

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

Запрос к серверу

Этот тип запроса отправляет команды непосредственно в базы данных ODBC, например Microsoft SQL, причем используются только команды, поддерживаемые сервером. Например, запрос к серверу используется для возвращения или изменения данных.

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

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

Данный тип запроса создает или вносит изменения в объекты базы данных, такие как таблицы Microsoft Access или Microsoft SQL Server.

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

Подчиненный запрос

Этот тип запроса состоит из вложенной в запрос на выборку или запрос на изменение инструкцию SQL SELECT. Чтобы определить новое поле, данную инструкцию можно ввести о строку Поле в бланке запроса. Чтобы указать для данного поля условие отбора, введите инструкцию в строку Условие отбора. Подчиненные запросы используются для:

·      проверки наличия результатов подчиненного запроса (используются зарезервированные слова EXISTS или NOT EXISTS);

·      поиска значений в основном запросе, которые равны, превышают или меньше значений, возвращаемых подчиненным запросом (используются зарезервированные слова ANY, IN или ALL);

·      создания подчиненных запросов внутри подчиненных запросов (вложенные запросы).

Создание формы

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

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

Предполагаемые действия

Создание простой формы с помощью кнопки Новый объект

       Создание формы с помощью мастера

       Создание формы без помощи мастера

       Создание формы на основе нескольких таблиц

       Создание формы из записей, отфильтрованных в таблице, запросе или другой форме

Создание отчета

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

Предполагаемые действия

Создание отчета из одной колонки с помощью автоотчета

       Создание отчета с помощью мастера

       Создание отчета без помощи мастера

       Создание отчета по нескольким таблицам

Ключевые поля.

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

В Microsoft Access можно выделить три типа ключевых полей: счетчик, простой ключ и составной ключ.

Ключевые поля счетчика

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

Простой ключ

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

Составной ключ

В случаях, когда невозможно гарантировать уникальность значений каждого поля, существует возможность создать ключ, состоящий из нескольких полей. Чаще всего такая ситуация возникает для таблицы, используемой для связывания двух таблиц в отношении «многие-ко-многим». Примером такой таблицы может служить таблица «Заказано» из демонстрационной базы данных «Борей», связывающая таблицы «Заказы» и «Товары». Ключ в этой таблице состоит из двух полей: «КодЗаказа» и «КодТовара». В таблице «Заказано» может быть представлено много товаров и много заказов, но каждый товар включается в заказ только один раз, поэтому комбинация значений полей «КодЗаказа» и «КодТовара» достаточна для образования ключа.

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

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

Поиск данных

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

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

·      Фильтры позволяют временно изолировать и просмотреть конкретный набор записей в открытой форме или в открытом объекте в режиме таблицы.

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

Метод поиска данных

       Диалоговое окно Поиск

       Диалоговое окно Замена

       Фильтр в таблице, запросе или форме

       Запрос

Свойство Фильтр (Filter) определяет подмножество записей, выводящихся после применения фильтра к форме, запросу или таблице.

Значения

Значение свойства Фильтр (Filter) определяется строковым выражением, содержащим предложение WHERE без ключевого слова WHERE. Например, следующие инструкции Visual Basic определят фильтр, отбирающий клиентов из России:

Me.Filter = "Страна = 'Россия'"

Me.FilterOn = True

Значение данного свойства задается в окне свойств формы или отчета, в макросе или в программе Visual Basic.

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

Примечание. Значения свойства Фильтр (Filter) не оказывают влияния на свойство Filter объектов доступа к данным.

Дополнительные сведения

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

При создании нового объекта он наследует значения свойств Источник записей (RecordSource), Фильтр (Filter), Порядок сортировки (OrderBy) и Сортировка включена (OrderByOn) таблицы или запроса, на базе которых создается объект.

Для применения сохраненного фильтра к форме, запросу или таблице следует нажать кнопку Применить фильтр на панели инструментов, выбрать в меню Записи команду Применить фильтр или задать в макросе или в программе Visual Basic для свойства Фильтр включен (FilterOn) значение True (-1). Для того чтобы применить фильтр в отчете, следует задать значение «Да» для свойства Фильтр включен в окне свойств отчета.

Кнопка Применить фильтр служит индикатором состояния свойств Фильтр (Filter) и Фильтр включен (FilterOn). Пока отсутствует фильтр, который можно применить, эта кнопка является недоступной. Если существующий фильтр уже применен, кнопка Применить фильтр выводится нажатой.

Для автоматического применения фильтра при открытии формы следует указать в свойстве события формы Открытие (OnOpen) либо макрос, содержащий макрокоманду ПрименитьФильтр (ApplyFilter), либо процедуру обработки события, в которой вызывается метод ApplyFilter объекта DoCmd.

Для снятия фильтра следует еще раз нажать нажатую кнопку Применить фильтр, выбрать в меню Записи команду Удалить фильтр или задать в программе Visual Basic для свойства Фильтр включен (FilterOn) значение False (0).

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

Если значение свойства Фильтр (Filter) задается в режиме конструктора формы, Microsoft Access не проверяет правильность выражения SQL. Если введено неверное выражение SQL, ошибка возникает при применении фильтра.

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...