Файл: Освой самостоятельно программирование для MS Access 2002 за 24 часа [П.Киммел].pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 21.10.2020
Просмотров: 7874
Скачиваний: 25

Погрузиться в таинства программирования на HTML вы сможете,
ознакомившись со специальной литературой и изучив код, написанный
вашими коллегами либо сгенерированный при помощи мастеров соз-
дания страниц доступа к данным.
Расширенные возможности проектирования
Web-страниц
Ранее уже говорилось о том, что индустрия программирования для Web сегодня
развивается самыми быстрыми темпами. Сайты, созданные с применением новейших
технологических достижений, помимо HTML, в большом количестве содержат также
блоки программного кода других видов. Сайты, решающие задачи электронной ком-
мерции, позволяют совершать покупки, осуществлять поисковые операции, отправ-
лять и принимать электронную почту. Для реализации подобных функций требуется
применение специальных средств.
Microsoft разработала стандарт под названием Active Server Pages (ASP). Web-
страницы, созданные на его основе, могут содержать код, написанный на языках
VBScript и JavaScript. Последний находит применение и при создании обычных стра-
ниц HTML. Сайты, обладающие расширенными возможностями, предполагают вы-
полнение на Web-сервере дополнительных программ — речь идет о таких серверах,
как, скажем,
NSAPI и CGI.
Если вас привлекают задачи электронной коммерции, обратитесь к услугам про-
фессионального разработчика или как минимум приобретите несколько специализи-
рованных изданий, посвященных технологиям построения и администрирования
Web-серверов, а также
проблемы обеспечения безопасного доступа к ре-
сурсам Internet и программирования в стандартах HTML и ASP. Подобные вопросы
выходят за рамки предмета нашего обсуждения.
Создание демонстрационной базы
данных
Задача создания корпоративной базы данных возникнет перед вами даже в том
случае, если речь идет о компании скромных размеров. Если вам приходится пользо-
ваться внутренним телефонным справочником фирмы, который хранится на традици-
онных бумажных носителях, то на поддержание его в активном состоянии придется
тратить немалые усилия и средства. Если же разместить справочник в виде таблицы
данных, доступной на узле intranet, многие проблемы просто исчезнут, и задача адми-
нистрирования сведется к выполнению ряда простых операций.
С любыми информационными потоками, действующими в среде не-
большой компании, справиться гораздо легче при наличии сайтов intranet.
Здесь могут публиковаться штатные расписания,
стандарты и требования, технические бюллетени и другие самые разно-
образные материалы, которые представляют интерес для широкого круга
сотрудников.
Поскольку правильность сказанного не поддается сомнению, в ходе дальнейшего
изложения будут приведены примеры использования простой корпоративной базы
данных, содержащей сведения о структуре компании.
360 Часть VII. Проектирование интерфейса пользователя

Новый термин
Схема —
обобщенный термин, применяемый для обозначения различных
совокупностей объектов, из которых состоит база данных — таблиц, по-
лей, индексов, запросов, хранимых процедур и т.п.
Представим себе вымышленную компанию, именуемую
которая занимается
разработкой специализированного программного обеспечения. База данных, содер-
жащая сведения о структуре и персонале eSoft, состоит из трех таблиц — DEPARTMENT,
EMPLOYEE и ROLES. Схема базы данных компании приведена в табл.
20.2 и 20.3.
Таблица
Структура таблицы DEPARTMENT, содержащей данные о подразделениях
компании
Название поля
Тип
Размер
Индекс
NAME
Text
Первичный
50
Таблица 20.2. Структура таблицы ROLES, в которой находится информация
о номенклатуре должностей компании
Название поля
Тип
Размер
Индекс
NAME
DESCRIPTION
AutoNumber
Text
Text
20
50
Первичный ключ
Таблица 20.3. Структура таблицы EMPLOYEE, содержащей данные о служащих
компании
Название поля
Тип
Размер
Индекс
SSN
DEPARTMENTJD
EXTENSION
ROLEJD
AutoNumber
Text
Text
Text
Number
Text
Text
Number
20
20
11
14
6
Первичный ключ
Внешний ключ
Внешний ключ
Основную роль в схеме играет таблица EMPLOYEE. Между таблицами EMPLOYEE и
DEPARTMENT установлена связь типа
т.е. для каждой записи DEPARTMENT
(подразделения компании) может существовать несколько записей EMPLOYEE (служащих).
Аналогичная связь (рис. 20.2.) задана и между таблицами EMPLOYEE и ROLES: каждый слу-
жащий занимает определенную должность, причем (естественно) допускается ситуация,
когда у нескольких служащих должности совпадают.
20-й час. Как связывать
с базами данных
361

NAME
.
2.
Связи между таблицами базы данных
Чтобы наш последующий разговор приобрел более предметные очертания, вам не-
обходимо создать базу данных Access (далее мы будем называть ее
t) и построить
в ней таблицы в соответствии со схемой, приведенной выше. Затем вы узнаете, как с
помощью мастера создать страницу доступа к данным.
Создание Web-страниц с помощью
мастеров
Решение проблем, легко поддающихся формализации, может быть автоматизиро-
вано — этот тезис сомнений
вызывает. Если в такую категорию попадают задачи
построения форм, почему такой вывод нельзя сделать о Web-страницах простой
структуры? По мере развития инструментальных средств меняются и наши взгляды на
то, решаема ли определенная задача, и если да, то каким образом.
Как и во многих других случаях, при построении страниц доступа к данным на
помощь приходят вездесущие мастера Access 2002. Чтобы ознакомиться с их переч-
нем, откройте недавно построенную базу данных
t, выберите в списке Объекты
(Objects) элемент Страницы (Pages) и щелкните на кнопке Создать (New) панели ин-
струментов. Откроется диалоговое окно Новая страница доступа к данным (New Data
Access Page), в котором представлены следующие режимы работы: Конструктор (Design
View), Существующая Web-страница (Existing Web page), Мастер страниц (Page Wizard)
и Автостраница: в столбец (Autopage: Columnar) (рис. 20.3).
В режиме Конструктор открывается чистая страница. Теперь всю работу придется
выполнить самостоятельно — это гораздо сложнее, нежели отредактировать страницу,
сформированную мастером. При выборе опции Существующая Web-страница откры-
вается диалоговое окно Поиск Web-страницы (Locare Web Page), позволяющее найти и
открыть одну из ранее созданных страниц. Имейте в виду, что Web-страницы сохра-
няются вне базы данных — Access запоминает лишь ссылки на их физические адреса.
Режим Автостраница: в столбец требует от вас минимальных усилий, но платой за это
будут ограниченные возможности дальнейшей настройки параметров полученной
страницы. Для его применения достаточно выбрать источник данных (таблицу или
запрос) и щелкнуть на кнопке ОК. Режим Мастер страниц предлагает компромиссный
вариант действий, обеспечивающий простоту использования и разнообразие возмож-
ностей (в дальнейшем внимание будет сконцентрировано именно на нем).
362
Часть VII. Проектирование интерфейса пользователя

i
i
• :
к ' ;
.
с полями, . - i
s один j
i
качестве
запрос
Конструктор
Г .
s
Диалоговое окно Новая
страница доступа к данным предлага-
ет на выбор несколько инструменталь-
ных средств
Чтобы продемонстрировать способы практического применения мастера страниц,
мы построим запрос, объединяющий информацию из всех таблиц базы данных
eSoft
—
И ROLES.
Выбор данных из нескольких таблиц
Запрос, который мы создадим, должен связать все три таблицы — EMPLOYEE,
DEPARTMENT и ROLES, чтобы вместо скупых идентификаторов (содержимого полей
DEPARTMENT_ID и ROLE_ID) пользователи видели наименования должности каждого
сотрудника и подразделения компании, в котором тот
Ключевые поля, DEPARTMENT_ID,
и
которые
обеспечивают уникальность записей и используются для логического
объединения таблиц, обычно не следует отображать на формах и Web-
страницах, кроме тех случаев, когда информация предназначается для
администраторов баз данных.
Создайте запрос, текст которого приведен ниже, в листинге 20.2, и сохраните его
ПОД именем
QUERY EMPLOYEE PHONELIST BY DEPARTMENT.
Листинг 20.2. Пример запроса, объединяющего данные из нескольких таблиц
SELECT
FROM ROLE RIGHT JOIN (DEPARTMENT RIGHT JOIN EMPLOYEE ON
=
ON
j Запрос возвратит данные следующих полей таблиц: DEPARTMENT.
DEPARTMENT_ID,
И
Поскольку в команде SELECT используются конструкции объединения таб-
лиц (операторы JOIN), запрос допускает только чтение данных — это, собст-
венно, то, что нам нужно.
20-й час. Как связывать Web-страницы с базами данных
363

Работа с мастером страниц
Чтобы построить страницу доступа к данным с помощью мастера на основе соз-
данного ранее запроса, выполните следующие действия.
1. Открыв базу данных eSoft, выберите в списке Объекты элемент Страницы и
щелкните на кнопке Создать панели инструментов.
2. В диалоговом окне Новая страница доступа к данным выберите опцию Мастер
страниц и в качестве источника данных укажите запрос
3. Щелкните на кнопке ОК.
4. В первом диалоговом окне Мастер страниц перенесите из списка Доступные поля
(Available Fields) в список Выбранные поля (Selected Fields) все поля запроса, за ис-
ключением
5. Щелкните на кнопке Далее (Next).
6. Второе диалоговое окно мастера дает возможность добавления уровней группиров-
ки. Выполните все необходимое и щелкните на кнопке
7. Третье диалоговое окно предлагает указать критерии сортировки набора данных.
Выберите наименование поля
Щелкните на кнопке Далее.
8. В четвертом диалоговом окне мастера можно указать таблицы, которые позволено
обновлять пользователю. Поскольку страница основана на запросе, допускающем
только чтение данных, страница доступа к базе данных должна оставаться тоже в
режиме "только для чтения". Щелкните на кнопке Далее.
9. В последнем диалоговом окне мастера измените название создаваемой страницы
Сотрудники компании.
Щелкните на кнопке Готово (Finish).
fi
-
Рис. 20.4. Так выглядит страница доступа к данным, созданная
с помощью мастера
364
Часть VII. Проектирование интерфейса пользователя