![](/user_photo/2706_HbeT2.jpg)
ACCESS_2010-ч2
.pdf![](/html/2706/959/html_DvmBUkqJ25.qEQ5/htmlconvd-E0JtAt31x1.jpg)
30
Связь макроса с событием формы
Для связи макроса ПЕРЕВОД КУРСОРА с событием «Открытие» формы С ВКЛАДКАМИ необходимо:
открыть форму С ВКЛАДКАМИ в режиме Конструктора;
открыть окно свойств формы с помощью кнопки [Страница свойств] в
группе Сервис на вкладке Конструктор;
выбрать на вкладке События в строке Открытие из раскрывающегося списка имя макроса ПЕРЕВОД КУРСОРА;
закрыть окно свойств и окно Конструктора с сохранением изменений.
Проверка работы макроса
Для проверки работы макроса откройте форму С ВКЛАДКАМИ в режиме формы и убедитесь, что курсор находится в поле НМ вкладки
Менеджер.
6.2.5.Макросы, связанные с событиями раздела отчета
Для выполнения следующего задания просмотреть отчет ОТЧЕТ2 и
убедиться в том, что его заголовок имеет фон. Сохранить данный отчет с новым именем ОТЧЕТ2 БЕЗ ФОНА по команде Файл/Сохранить объект
как.
Задание 6.13. Создать макрос, позволяющий в отчете ОТЧЕТ2 БЕЗ ФОНА снимать фон с его раздела "Заголовок отчета".
Макрос сохранить с именем СНЯТИЕ ФОНА.
Выполнение задания
Создание макроса
Откройте окно Конструктора макроса и сформируйте текст макроса,
как на рис. 6.18.
![](/html/2706/959/html_DvmBUkqJ25.qEQ5/htmlconvd-E0JtAt32x1.jpg)
31
Рис. 6.18. Текст макроса СНЯТИЕ ФОНА Закройте окно Конструктора с сохранением макроса с заданным
именем.
Связь макроса с событием раздела отчета
В отчете ОТЧЕТ2 БЕЗ ФОНА снимается цвет фона с его раздела
"Заголовок отчета" при наступлении события «При окрашивании». Поэтому макрос СНЯТИЕ ФОНА следует связать с событием «При окрашивании» раздела "Заголовок отчета".
Для связи необходимо:
открыть отчет ОТЧЕТ2 БЕЗ ФОНА в режиме Конструктора;
активизировать раздел "Заголовок отчета";
открыть для него окно свойств;
выбрать на вкладке События в строке "При окрашивании" имя макроса
СНЯТИЕ ФОНА;
закрыть окно свойств и окно Конструктора с сохранением изменений.
Проверка работы макроса
Для проверки работы макроса осуществите просмотр отчета ОТЧЕТ2 БЕЗ ФОНА. Обратите внимание на то, его заголовок имеет белый фон.
6.2.6.Макросы, связанные с событиями отчета
Для выполнения следующего задания необходимо создать запрос
для отбора сведений об остатках на счетах только в филиале № 512. Для этого в процессе создания запроса в окне Добавление таблицы на вкладке
![](/html/2706/959/html_DvmBUkqJ25.qEQ5/htmlconvd-E0JtAt33x1.jpg)
32
Запросы выберите запрос ОСТАТКИ и в окне Конструктора задайте условие отбора 512 для поля НФ. Созданный запрос сохраните с именем ОСТАТКИ 512. Кроме того, откройте отчет ОТЧЕТ2 и сохраните его с новым именем ОТЧЕТ2 С ФИЛЬТРАЦИЕЙ.
Задание 6.14. Создать макрос, позволяющий в отчете ОТЧЕТ2 С ФИЛЬТРАЦИЕЙ выводить для анализа сведения только об остатках на счетах филиала № 512.
Макрос сохранить с именем ФИЛЬТР ДО ПЕЧАТИ. Выполнение задания
Создание макроса
Откройте окно Конструктора макроса и сформируйте текст макроса, как на рис. 6.19.
Рис. 6.19. Текст макроса ФИЛЬТР ДО ПЕЧАТИ
Закройте окно Конструктора с сохранением макроса с заданным именем.
Связь макроса с событием отчета
С целью распечатки в отчете части записей применяется фильтр, результат которого просматривается при открытии отчета. Поэтому макрос ФИЛЬТР ДО ПЕЧАТИ следует связать с событием отчета «Открытие».
Для связи необходимо:
![](/html/2706/959/html_DvmBUkqJ25.qEQ5/htmlconvd-E0JtAt34x1.jpg)
33
открыть отчет ОТЧЕТ2 С ФИЛЬТРАЦИЕЙ в режиме Конструктора;
открыть для него окно свойств;
выбрать на вкладке События в строке Открытие из раскрывающегося списка имя макроса ФИЛЬТР ДО ПЕЧАТИ;
закрыть окно свойств и окно Конструктора с сохранением изменений.
Проверка работы макроса
Для проверки работы макроса осуществите просмотр отчета ОТЧЕТ2 С ФИЛЬТРАЦИЕЙ и обратите внимание на то, что в отчете отображаются только строки с информацией об остатках на счетах филиала № 512.
Для выполнения следующего задания открыть отчет ОТЧЕТ2 и сохранить его с новым именем ОТЧЕТ2 С СООБЩЕНИЕМ. В режиме Конструктора в раздел "Примечание группы" вставить элемент управления "Разрыв страницы" ниже элементов управления для итоговой строки. В этом случае данные о каждой группе будут выводиться с новой страницы.
Задание 6.15. Создать макрос, позволяющий при просмотре отчета ОТЧЕТ2 С СООБЩЕНИЕМ в случае перехода к новой странице выводить сообщение, содержащее номер этой страницы.
Макрос сохранить с именем ПЕРЕХОД К СТРАНИЦЕ. Выполнение задания
Создание макроса
Откройте окно Конструктора макроса и сформируйте текст макроса, как на рис. 6.20.
34
Рис. 6.20. Текст макроса ПЕРЕХОД К СТРАНИЦЕ
Закройте окно Конструктора с сохранением макроса с заданным именем.
Связь макроса с событием отчета
Данный макрос позволяет выводить сообщение при переходе к следующей странице. Поэтому его следует связать с событием отчета
«Страница».
Связь макроса с событием осуществите аналогично тому, как это описано в предыдущем задании.
Проверка работы макроса
Для проверки работы макроса осуществите постраничный просмотр отчета ОТЧЕТ2 С СООБЩЕНИЕМ. Обратите внимание на то, что при переходе к следующей странице появляется окно с сообщением, содержащим номер этой страницы.
Контрольные вопросы
1.Что собой представляет макрос в СУБД Access?
2.Как можно классифицировать макрокоманды?
3.Какие существуют типы макросов по структуре?
4.Что собой представляют линейный, условный, групповой макрос?
5.Что такое вложенный макрос?
6.Как определяется событие в СУБД Access?
7.Для каких объектов БД определены события?
8.Как классифицируются макросы, связанные с событиями?
9.С помощью какого инструментального средства создаются макросы?
10.Как макрос, не связанный с событием, выполняется?
11.Какой режим используется для отладки макроса?
12.Как создается макрос данных?
13.Как создается внедренный макрос?
![](/html/2706/959/html_DvmBUkqJ25.qEQ5/htmlconvd-E0JtAt36x1.jpg)
35
14.С событиями чего могут быть связаны макросы форм?
15.С событиями чего могут быть связаны макросы отчетов?
16.Как осуществляется связь макроса с событием?
Тема 3. ВВЕДЕНИЕ В ЯЗЫК SQL
1.РАБОТА С БАЗОЙ ДАННЫХ В РЕЖИМЕ SQL
Вэтом разделе Вы освоите с помощью SQL-команд создание структуры таблиц и связи между ними заполнение таблиц данными внесение изменений в базу данных выборку данных из базы
В предыдущих разделах при освоении современных технологий БД упор был сделан на работу с БД в режиме, в котором операции выполнялись через систему меню СУБД. При этом использовались инструментальные средства СУБД для выполнения типовых задач по созданию и обработке объектов БД в графической среде, обеспечивающей быстрое восприятие этих средств и простоту работы с ними.
В профессиональной деятельности специалисту, работающему с информацией в среде автоматизированной информационной системы,
требуются более обширные навыки в области технологий БД. В частности,
это технологии работы с БД с помощью языка SQL (в режиме SQL). В этом режиме пользователь формирует запросы к БД путем ввода с клавиатуры отдельных команд языка SQL в соответствии с их форматами. Работа в данном режиме обеспечивает более быстрый доступ к данным базы.
Язык SQL (Structured Query Language) – это структурированный язык запросов для работы с реляционными базами данных.
36
В настоящее время язык SQL используется многими СУБД на множестве современных компьютерных платформ. Поэтому пользователи,
владеющие им, имеют огромные возможности доступа и применения данных разнообразных баз независимо от среды их создания.
В пособии рассматривается стандарт языка SQL-2, поддерживаемый с различной степенью соответствия всеми производителями реляционных СУБД.
1.1.Структура SQL-команды
Язык SQL включает набор команд, которые позволяют осуществлять:
организацию данных;
изменение данных;
чтение данных;
управление доступом к данным;
совместное использование данных;
обеспечение целостности данных;
обращение к БД в прикладных программах.
Каждая команда языка SQL начинается с ключевого слова – глагола,
описывающего действие, выполняемое командой, например, CREATE (создать). В команде может быть одно или несколько предложений.
Предложение описывает данные, с которыми работает команда, или содержит уточняющую информацию о действии, выполняемом командой.
Каждое предложение начинается с ключевого слова, например, WHERE
(где). Одни предложения в команде являются обязательными, а другие – нет.
Некоторые предложения могут содержать дополнительные ключевые слова,
выражения. Многие предложения включают имена таблиц или полей. Имена должны содержать от 1 до 18 символов, начинаться с буквы и не содержать пробелы и специальные символы пунктуации. В качестве имен полей и таблиц нельзя использовать ключевые слова.
![](/html/2706/959/html_DvmBUkqJ25.qEQ5/htmlconvd-E0JtAt38x1.jpg)
37
Пример SQL-команды |
|
|
|
|
|||
DELETE |
FROM |
МЕНЕДЖЕР |
WHERE |
НМ=20 |
|||
|
(удалить) |
(из) |
(имя таблицы) |
(где) |
(условие) |
||
|
|
|
|
|
|
|
|
Глагол |
Предложение |
Предложение |
В SQL-командах используются выражения для задания критериев отбора данных или выполнения операций над значениями полей БД.
Выражения представляют собой определенную последовательность полей БД, констант, функций, соединенных операторами.
В полях могут храниться данные определенных типов. Некоторые из них перечислены в табл. 1.1.
|
|
Таблица 1.1 |
|
Типы данных языка SQL |
|
|
|
|
Тип данных |
|
Описание |
|
|
|
CHAR(длина) |
|
Строки символов постоянной длины |
CHARACTER(длина) |
|
|
|
|
|
INTEGER |
|
Целые числа |
INT |
|
|
|
|
|
SMALLINT |
|
Малые целые числа |
|
|
|
DATETIME |
|
Дата/время |
|
|
|
В выражениях могут использоваться следующие константы: |
|
|||
константы с фиксированной запятой. Например, 21 |
-375.18 |
62.3; |
||
константы с плавающей запятой. Например, 0.5Е7 |
-3.14Е9 |
2.5Е-6; |
||
строковые константы. Например, "New York" |
"пр. Скорины, 28-4"; |
|||
константы типа Дата/время. Например, |
|
|
|
|
#12/03/2009 15:20:7# |
#10/05/2010# |
|
![](/html/2706/959/html_DvmBUkqJ25.qEQ5/htmlconvd-E0JtAt39x1.jpg)
38
Обработка отсутствующих значений может осуществляться с помощью константы отсутствующее значение (NULL). Например, значение NULL в
поле "Адрес клиента" означает, что адрес клиента неизвестен.
Функции задают выполнение определенных операций. Например,
функция Now() возвращает текущее значение даты и времени.
Ввыражениях можно использовать следующие операторы:
1)арифметические: + (сложение), - (вычитание), * (умножение), / (деление);
2)сравнения: = (равно), > (больше), < (меньше), >= (больше или равно), <=
(меньше или равно), <> (не равно);
3)логические: AND (логическое "И"), OR (логическое "ИЛИ"), NOT (отрицание "НЕТ");
4)специальные:
IN – определяет множество, которому может принадлежать значение;
BETWEEN – задает границы, в которых должно находиться значение;
LIKE – применяется для поиска по шаблону;
IS NULL – используется для поиска NULL-значений.
Как было сказано выше, формирование запросов к БД на языке SQL
предполагает ввод команд с клавиатуры в строгом соответствии с их форматами. Для записи форматов команд (иногда усеченных) будем использовать следующие соглашения:
< > (угловые скобки) – то, что в них указано, определяет пользователь;
[ ] (квадратные скобки) – выделяют те части команды, которые могут отсутствовать;
( ) (круглые скобки) – заключают аргументы команды;
{ },… – заключенная в фигурные скобки часть команды может быть повторена несколько раз, причем повторы разделяются запятыми;
(вертикальная черта) – означает альтернативный выбор.
![](/html/2706/959/html_DvmBUkqJ25.qEQ5/htmlconvd-E0JtAt40x1.jpg)
39
1.2.Создание базы данных
Рассмотрим пример создания с помощью SQL-команд базы данных
ТУРИЗМ, включающей две таблицы, связанные между собой следующим
образом:
|
1 |
М |
|
Таблица ФИРМА |
Таблица ТУР |
||
|
|
|
|
Код фирмы |
|
|
Код фирмы |
9(2) |
|
|
9(2) |
|
|
|
|
Название фирмы |
|
|
Код тура |
А(15) |
|
|
9(3) |
|
|
|
|
|
|
|
Дата начала тура |
|
|
|
ДД.ММ.ГГГГ |
|
|
|
|
|
|
|
Стоимость тура, у.е. |
|
|
|
9(4) |
|
|
|
|
Здесь для каждого поля указаны форматы их значений. В дальнейшем с целью более быстрого ввода SQL-команд будем именовать названия таблиц и их полей, используя буквы английского алфавита.
Исходя из форматов значений полей и требований языка SQL к
описанию данных, опишем поля таблицы ФИРМА, как в табл. 1.2.
Таблица 1.2.
Описание полей таблицы FIRMA
|
Код фирмы |
Название фирмы |
|
|
|
Имя поля |
KF |
NF |
|
|
|
Тип данных |
Целые числа |
Строки символов постоянной |
|
|
длины |
|
|
|
Размер поля |
- |
15 |
|
|
|
Ограничения на |
Первичный ключ |
Обязательно для |
поле |
|
заполнения |
|
|
|