Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
УМК активный раздаточный материал СУБД.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
797.7 Кб
Скачать

Дополнительная литература: 10[958:962].

Контрольные вопросы:

1. Какие существуют основные классы – контейнеры.

2. Какие существуют основные классы – элементы управления.

3. Основные события объектной модели Visual FoxPro.

4. Основные свойства объектов в Visual FoxPro.

5. Стандартные методы объектной модели Visual FoxPro.

Тема12. Инструментальные средства субд.

Во всех современных СУБД используется объектно-ориентированный подход, что позволяет применять технологию визуального проектирования БД и их приложений. Эта технология реализуется с помощью специальных средств: конструкторов, генераторов, редакторов, мастеров, построителей и т.д.

Конструкторы (генераторы, редакторы) используются для проектирования компонентов БД и пользовательских приложений БД. Они имеют набор специальных средств (инструменты, кнопки, функциональные окна, команды меню и т.д.), которые позволяют с учетом специфики каждого объекта максимально облегчить и сделать наглядным процесс разработки.

Во многих современных программных системах существуют процедуры, которые в русскоязычной литературе называют Мастерами, а в англоязычной – Wizards (Волшебники). Они предназначены для упрощения процесса разработки сложных объектов. Особенность Мастеров состоит в том, что они используют готовые объекты для создания стандартизованных объектов.

Мастера – это интерактивные визуальные средства проектирования, которые через заранее определенную последовательность диалоговых окон (шагов) уточняют задачу и разрабатывают требуемый компонент, используя стандартное решение задачи. Так как это стандартное решение, то при этом упускаются из виду специфические особенности создаваемого объекта или данных, но сам процесс разработки упрощается. После запуска мастера достаточно ответить на вопросы в текущем диалоговом окне, после чего перейти к следующему шагу работы мастера.

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

В реляционных СУБД данные представляются в табличном виде. Данные можно организовывать либо в автономные таблицы, либо в таблицы базы данных (в зависимости от требований конкретной СУБД). Таблицы и базы данных – это основные объекты СУБД. В общем случае базы данных представляют собой совокупность логически связанных таблиц данных. Поэтому отношения между таблицами также хранятся в базе данных. Для ускорения поиска данных в таблице используются индексы, входящие в состав баз данных. В большинстве СУБД реализован механизм триггеров. Триггеры хранятся в базе данных и позволяют централизованно обрабатывать события, возникающие при любых изменениях в базе данных. Можно также создавать хранимые процедуры, которые являются частью базы данных и используются при описании таблиц для проверки введённых данных, определения значения по умолчанию и т.п.

Помимо таблиц для отображения и (или) редактирования данных в приложениях баз данных широко используются и другие объекты – компоненты СУБД: представления, формы, отчёты, запросы, программы. Эти объекты, в отличие от других объектов (кнопок, переключателей, списков и т.д.), являются самостоятельными компонентами СУБД наряду с таблицами данных. Их создание и использование выполняется независимо от других объектов или в зависимости только от таблиц данных. Формы, отчёты, запросы, программы могут храниться в одном файле с таблицами (например, в СУБД Access) или в отдельных файлах (например, в СУБД Visual FoxPro). Во втором случае, в зависимости от содержащегося в файле объекта, СУБД автоматически присваивает каждому файлу расширение, которое помогает в идентификации объекта.

Чрезвычайно удобным и полезным средством доступа к базе данных являются представления данных (виды, просмотры данных). Представления данных позволяют объединять данные таблиц и отображать их в более удобном виде. Можно выбрать только интересующие поля таблиц, объединить несколько полей в одно поле, вычислить итоговые значения, задать новые имена полей таблицы и т.д.

Как правило, количество представлений в базе данных намного превосходит количество таблиц. По мере эксплуатации базы данных их число непрерывно растёт. Во многих информационных системах доступ к данным (включая просмотр, добавление и редактирование) осуществляется только с помощью представлений данных. Такой подход позволяет осуществить гибкое управление доступом к информации. Редактирование данных, включённых в представление, возможно только при определённых условиях.

При выборке данных из представлений в формы, отчёты, запросы, а также в программах применяются те же правила, что и для таблиц.

В приложениях баз данных широко используются формы и отчёты. Они являются составными объектами, так как состоят из более мелких объектов (таких, как поля, кнопки, диаграммы, рамки, OLE – компоненты и прочие объекты), которые называются объектами интерфейса.

Формы – объекты, предназначенные в основном для программирования графического интерфейса пользователя, для просмотра и редактирования информации из баз данных, для отображения и ввода данных с применением различных элементов управления. Например, при разработке приложения для бухгалтерии возможно создание форм, которые на экране будут выглядеть точно так же, как стандартные бланки бухгалтерских документов.

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

Отчеты – используются для форматирования, вычисления итогов и печати определенных данных из базы данных. Отчёты создаются в том случае, если информацию необходимо иметь в печатном виде. Примерами отчётов являются прайс-листы товаров, списки покупателей, различные ведомости и т.д. Как правило, отчеты можно предварительно просматривать на экране.

Запросы – являются средством выборки данных из одной или нескольких таблиц. Практически во всех реляционных СУБД для создания запроса используется специализированный язык Structured Query Language – SQL (см.3.3). Результаты выполнения запроса могут отображаться в форме, выводиться в виде отчётов и диаграмм или сохраняться в указанной таблице. Можно создать запрос не только на выборку, но и на обновление, удаление, добавление данных.

Один и тот же компонент может быть создан с использованием разных средств. Например, для создания отчётов (форм) в настольной СУБД Visual FoxPro используются мастер и конструктор отчётов (форм). С помощью мастера отчётов можно быстро создать собственный отчёт на основе имеющихся шаблонов. Применяя конструктор отчётов, можно создавать отчёты произвольной сложности, включая многоуровневую группировку данных и размещение вычисляемых полей. Чтобы создавать формы в СУБД Visual FoxPro, можно использовать не только базовые классы, но и создать собственные (например, определить класс форм, в котором задан определённый цвет фона и стандартный набор кнопок для управления данными). Чтобы стандартизировать разработку, полезно иметь один или несколько пользовательских классов для каждого базового класса.

Для создания компонентов системы в Visual FoxPro существует большое количество мастеров (Wizards), краткая характеристика которых приведена ниже.

Мастер баз данных (Database Wizard) – облегчает построение баз данных за счёт использования стандартных типовых баз данных.

Мастер таблиц (Table Wizard) – облегчает построение таблиц за счёт использования стандартных типовых (около 40) таблиц.

Мастер запросов (Query Wizard) – позволяет создать запрос из нескольких таблиц, указав условия для выбора данных и условия для связи между таблицами, при этом постоянные связи между таблицами БД игнорируются.

Мастер перекрёстных таблиц (Cross Table Wizard) – позволяет создать запрос в виде электронной таблицы, которую можно экспортировать в формат электронных таблиц MS Excel, Lotus 1,2,3 и работать с нею в табличном процессоре.

Мастер диаграмм(Graph Wizard) – позволяет создать по данным таблицы график (диаграмму) MS Graph и поместить этот график в специальную таблицу с именем VFPgraph в поле типа General с именем 50leograph. При создании графика данные одного поля таблицы используются для оси абсцисс, для оси ординат, в зависимости от типа графика, используются данные от одного до нескольких полей. Затем этот график можно использовать в отчете, в форме.

Мастер локальных представлений (Local View Wizard) и Мастер внешних представлений (Remote View Wizard) – создают, соответственно, локальные и удаленные представления (виртуальные таблицы – виды), которые сохраняются в БД. Эти представления можно просматривать, но через них нельзя изменить данные в источнике данных. Чтобы источники данных обновлялись, представления необходимо отредактировать в Конструкторе представлений. Мастер внешних представлений использует технологию ODBC (Open Database Connectivity) для создания видов из внешних данных, то есть данных не в формате DBF.

Мастер форм (Form Wizard) – создаёт форму на основе данных одной таблицы.

Мастер форм 1:М (One-to-Many Form Wizard) – позволяет создать форму с данными из двух таблиц, связанных отношением 1:М, причём данные из дочерней таблицы располагаются в виде объекта Grid (таблицы). Мастер форм для отображения данных более, чем из двух таблиц, не существует.

Мастер отчётов (Report Wizard) – создает простой отчёт с упорядоченными данными.

Мастер отчётов с группировкой данных (Group/Total Report Wizard) – позволяет дополнительно указать условия группировки данных (3 уровня) и подведение итогов по каждой группе.

Мастер отчётов 1:М (One-to-Many Report Wizard) – создает отчёт на базе двух таблиц, связанных отношением 1:М. Указываются поля из родительской таблицы, затем из дочерней, данные из которых будут печататься следом за записью родительской таблицы.

Мастер ярлыков (Label Wizard) – позволяет создать этикетку (наклейку, ярлык) на основе данных одной таблицы и правильно расположить этикетки на листе для печати.

Кроме этих, традиционных для многих СУБД, мастеров существует ряд специфических мастеров, перечисленных ниже.

Мастер почтовой рассылки (Mail Merge Wizard) – создаёт источник данных для документа почтовой рассылки текстового процессора Microsoft Word. MS Word должен быть инсталлирован на компьютере, так как после окончания работы мастера он автоматически запускается. Составляется текст документа и указывается, куда вставить выбранные поля из источника данных. Этот мастер используется также для создания текстового файла, который может быть использован в любом текстовом процессоре.

Мастер сводных таблиц (Pivot Table Wizard) – позволяет создать электронную таблицу как объект MS Excel или как объект формы Visual FoxPro. В первом случае в конце работы мастера автоматически запускается MS Excel. Во втором случае – автоматически создается форма со встроенной таблицей и открывается в Конструкторе форм.

Мастер импорта данных (Import Wizard) – из таблиц Excel, Lotus, СУБД Paradox, текстовых файлов импортирует данные в таблицу формата DBF. Можно создать новую таблицу или добавить данные в существующую таблицу.

Мастер документирования (Documenting Wizard) – подготавливает программу для распечатки.

Мастер создания дистрибутива (Setup Wizard) – обеспечивает создание дистрибутива разработанного приложения.

Мастер создания Internet страницы (WWW Search Page Wizard) – позволяет представить данные в виде статичного Web-документа (страница в формате HTML).

Мастера наращивания (Upsizing Wizard) для MS SQL Server и Oracle Server – позволяют перенести БД с локального компьютера на сервер БД.

При создании приложений БД во многих СУБД (и не только в СУБД) используется понятие проекта. Проект – средство объединения отдельных элементов приложения. Для создания проекта используются специальные средства. Мастер проектов или мастер создания приложений (Application Wizard) – обеспечивает построение проекта приложения.

Мастера обеспечивают быстрое и упрощенное создание компонентов системы в режиме диалога по стандартным шаблонам. А для создания компонентов, максимально учитывающих специфику задачи, используются конструкторы Visual FoxPro: Конструктор БД, Конструктор таблиц, Конструктор представлений, Конструктор запросов, Конструктор форм, Конструктор отчетов, Конструктор ярлыков и т.д. Компоненты Visual FoxPro, созданные с помощью мастера, можно открыть в соответствующем конструкторе и модифицировать для придания требуемой функциональности.

Конструкторы имеют свои меню с набором соответствующих команд, специфические панели инструментов, функциональные окна, кнопки и другие средства, которые позволяют создавать компоненты с заданными функциями, свойствами, методами. Некоторые компоненты Visual FoxPro (например, меню), можно создать только в конструкторе. При запуске любого конструктора в системное меню Visual FoxPro добавляется дополнительный пункт меню с командами для работы с соответствующим компонентом.

Основная литература: 1[160:163,178:189], 5[4:34].

Контрольные вопросы:

1. Какие объекты относятся к основным объектам СУБД?

2. Что собой представляют объекты-формы и объекты-отчеты, для чего они используются?

3. Что собой представляют объекты-запросы и объекты-программы, для чего они используются?

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

5. Для чего используются конструкторы, мастера, построители?