![]() |
|
Программирование >> Проектирование интерфейса пользователя
Новый термин Схема - обобщенный термин, применяемый для обозначения различных совокупностей объектов, из которых состоит база данных - таблиц, полей, индексов, запросов, хранимых процедур и т.п. Представим себе вымышленную компанию, именуемую которая занимается разработкой специализированного программного обеспечения. База данных, содержащая сведения о структуре и персонале eSoft, состоит из трех таблиц - DEPARTMENT, EMPLOYEE и ROLES. Схема базы данных компании приведена в табл. 20.1, 20.2 и 20.3. Таблица .1. Структура таблицы DEPARTMENT, содержащей данные о подразделениях компании Название поля Размер Индекс DEPARTMENT.ID NAME AutoNumber Text Первичный ключ Таблица 20.2. Структура таблицы ROLES, в которой находится информация о номенклатуре должностей компании Название поля Размер Индекс ROLE.ID NAME DESCRIPTION AutoNumber Text Text Первичный ключ 20 50 Таблица 20.3. Структура таблицы EMPLOYEE, содержащей данные о служащих компании
Основную роль в схеме играет таблица EMPLOYEE. Между таблицами EMPLOYEE и DEPARTMENT установлена связь типа -одному, т.е. для каждой записи DEPARTMENT (подразделения компании) может существовать несколько записей EMPLOYEE (служащих). Аналогичная связь (рис. 20.2.) задана и между таблицами EMPLOYEE и ROLES: каждый служащий занимает определенную должность, причем (естественно) допускается ситуация, когда у нескольких служащих должности совпадают. FIRST NAME LAST.NANE SSN EXTENSION ЯСХс.Ю ![]() NAME DESCRIPTION PucO. 2. Связи между таблицами базы данных eSoft Чтобы наш последующий разговор приобрел более предметные очертания, вам необходимо создать базу данных Access (далее мы будем называть ее eSoft) и построить в ней таблицы в соответствии со схемой, приведенной выше. Затем вы узнаете, как с помощью мастера создать страницу доступа к данным. Создание Web-страниц с помощью мастеров Решение проблем, легко поддающихся формализации, может быть автоматизировано - этот тезис сомнений не вызывает. Если в такую категорию попадают задачи построения форм, почему такой вывод нельзя сделать о Web-страницах простой структуры? По мере развития инструментальных средств меняются и наши взгляды на то, решаема ли определенная задача, и если да, то каким образом. Как и во многих других случаях, при построении страниц доступа к данным на помощь приходят вездесущие мастера Access 2002. Чтобы ознакомиться с их перечнем, откройте недавно построенную базу данных eSoft, выберите в списке Объекты (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 запоминает лишь ссылки на их физические адреса. Режим Автостраница: в столбец требует от вас минимальных усилий, но платой за это будут ограниченные возможности дальнейшей настройки параметров полученной страницы. Для его применения достаточно выбрать источник данных (таблицу или запрос) и щелкнуть на кнопке ОК. Режим Мастер страниц предлагает компромиссный вариант действий, обеспечивающий простоту использования и разнообразие возможностей (в дальнейшем внимание будет сконцентрировано именно на нем). j двтшатическйе cosaa**te crpawftbi доступа к WSsiM с поли, . -: распояозк *№ 1и s один I столбец. Конструктор усщая веб-стра> 1ца -Выбсрит-ев [ источгтаданныхгаелчцу ЯШ запрос Рис. 20.3. Диалоговое окно Новая страница доступа к данным предлагает на выбор несколько инструментальных средств Чтобы продемонстрировать способы практического применения мастера страниц, мы построим запрос, объединяющий информацию из всех таблиц базы данных eSoft - EMPLOYEE, DEPARTMENT И ROLES. Выбор данных из нескольких таблиц Запрос, который мы создадим, должен связать все три таблицы - EMPLOYEE, DEPARTMENT и ROLES, чтобы вместо скупых идентификаторов (содержимого полей DEPARTMENTID и ROLEID) пользователи видели наименования должности каждого сотрудника и подразделения компании, в котором тот Ключевые поля, DEPARTMENTJD E ID OTEE ID, которые обеспечивают уникальность записей и используются для логического объединения таблиц, обычно не следует отображать на формах и Web-страницах, кроме тех случаев, когда информация предназначается для администраторов баз данных. Создайте запрос, текст которого приведен ниже, в листинге 20.2, и сохраните его ПОД именем QUERY EMPLOYEE PHONELIST BY DEPARTMENT. Листинг 20.2. Пример запроса, объединяющего данные из нескольких таблиц 1: SELECT DEPARTMENT.DEPARTMENT id, DEPARTMENT.NAME, 2: EMPLOYEE.FIRST NAME, EMPLOYEE.LAST NAME, 3: EMPLOYEE.PHONE NUMBER, EMPLOYEE.EXTENSION,ROLE.NAME 4: FROM ROLE RIGHT JOIN (DEPARTMENT RIGHT JOIN EMPLOYEE ON 5: DEPARTMENT.DEPARTMENT id = EMPLOYEE.DEPARTMENT ID) ON 6: ROLE.ROLE id = EMPLOYEE.ROLE id); j Запрос возвратит данные следующих полей таблиц: DEPARTMENT. DEPARTMENTID, DEPARTMENT.NAME, EMPLOYEE.FIRST NAME, EMPLOYEE. LAST NAME, EMPLOYEE.PHONE NUMBER, EMPLOYEE.EXTENSION И ROLE.NAME. Поскольку в команде SELECT используются конструкции объединения таблиц (операторы JOIN), запрос допускает только чтение данн1х - это, собственно, то, что нам нужно.
|
© 2006 - 2025 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |