КАТЕГОРИИ: Архитектура-(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) |
Разработка первого запроса
Создание запросов
Запрос представляет собой формализованное требование на манипуляцию данными базы. Под манипуляцией понимается совокупность действий, включающих выборку, изменение и добавление информации в базе данных. В него входит перечень полей для просмотра и условий отбора данных. В примере задания заданы четыре запроса: 1. Какие клиенты не оплатили заказы на данный момент; 2. Каково состояние оплаты заказов клиентами – сумма заказа, оплачено, отклонение; 3. Какие клиенты заказали тот или иной товар и сколько; 4. Какова стоимость продаж за заданный период.
На примере первого запроса покажем методологию разработки запросов. В процессе создания запроса выполняются следующие этапы: 1. из словесной формулировки запроса устанавливаются поля, которые нужно выбрать из базы данных. 2. определяются таблицы, которые содержат эти поля; 3. анализируются и корректируются связи между таблицами; 4. определяются и устанавливаются условия отбора данных. В соответствии с ними действия по разработке первого запроса будут выглядеть так: 1. В соответствии с формулировкой запроса требуются следующие данные: имя клиента и сумма оплаты. Они содержатся в полях «Организация» и «Сумма оплаты». 2. Эти поля содержатся в таблицах «Клиенты» и «Оплата» соответственно. В соответствии со схемой базы данных таблицы «Клиенты» и «Оплата» между собой непосредственно не связаны. Выборка данных полей из несвязанных таблиц даст абсурдный результат. Поэтому в запрос нужно включить связующую таблицу, которой, в соответствии со схемой является таблица «Заказ». 3. Связи между выбранными таблицами в запросе устанавливаются автоматически из схемы базы данных. Однако в этом запросе есть одна особенность: нужно найти не оплаченные заказы, то есть заказы, для которых в таблице «Оплата» нет ни одной записи. Чтобы проявить такие записи в СУБД Access есть режим связи между таблицами, в котором показываются все записи таблицы «Заказ», а для тех из них, для которых не существует соответствующих записей в таблице «Оплата» проставляются записи со значениями – «пусто» (в СУБД Access значение «пусто» обозначается Null). 4. Условием отбора являются записи, для которых значение поля «Сумма оплаты» пусто (Is Null). В СУБД Access предусмотрены две формы создания запроса: на языке SQL и в виде запроса по образцу (QBE). Более простым для разработчика не профессионала способом является второй. Чтобы приступить к созданию запроса вторым способом, необходимо открыть вкладку «Запросы» и нажать кнопку «Создат ь». В открывшемся окне необходимо выбрать режим «Конструктор». В открывшихся окнах предлагается выбрать таблицы, в которых содержатся требуемые атрибуты. Для первого запроса необходимы таблицы «Клиенты», «Заказы» и «Оплата. В результате будет получена следующая форма запроса:
Для вызова окна параметров объединения щелкнуть правой клавишей мыши на связи между таблицами и в открывшемся окне выбрать «Параметры объединения».
Другой случай будет рассмотрен ниже. После того как запрос сформирован, можно просмотреть результат, нажав кнопку на панели инструментов. Результат запроса будет выглядеть примерно так:
Если необходимо выбрать клиентов оплативших заказ, то в строку «Условие отбора» поля «Сумма оплаты» нужно включить условие отбора «> 0». Тогда результат выполнения запроса будет следующим. Как видно из рисунка результат запроса показывает еще и за сколько приемов был оплачен заказ.
Здесь строка с заказом номер 3 и 4 повторяется два раза, так как оплата заказа была произведена за два приема, а не оплаченные заказы отсутствуют. Если запрос необходимо повторять в дальнейшем, то его лучше сохранить под каким либо именем. Поскольку универсальным способом описания запросов является представление запроса на языке SQL, то перейти к SQL запросу можно нажав на панели инструментов кнопку . Для рассмотренного запроса SQL выражение выглядит так: SELECT Клиенты.Организация, Заказ.[Номер заказа], Оплата.[Сумма оплаты] FROM Клиенты INNER JOIN (Заказ LEFT JOIN Оплата ON Заказ.[Номер заказа] = Оплата.[Номер заказа]) ON Клиенты.[Код клиента] = Заказ.[Код клиента] WHERE (((Оплата.[Сумма оплаты]) Is Null));
Более серьезный и сложный анализ деятельности фирмы рассмотрен во втором запросе.
Дата добавления: 2014-10-22; Просмотров: 700; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |