Смекни!
smekni.com

Oracle Power Objects (стр. 5 из 7)

3. Индексы. Обеспечивают быстрый доступ к отдельным строкам в таблице. Индексы хранят «указатели» на каждую строку в таблице в формате, оптимизированном для быстрой сортировки и поиска данные. Будучи создан, индекс автоматически поддерживается и используется базой данных всякий раз при обращении к индексированным столбцам.

4. Последовательности. Объекты, генерирующие ряд целых чисел, которые могут применяться для назначения уникальных идентификаторов строкам таблицы. Значения последовательности можно использовать, чтобы гарантировать, что столбец не содержит дублированных значений (например, столбец первичного ключа). Некоторые базы данных, такие какSQL Server, не поддерживают последовательности; для этих баз данных необходимы альтернативные методы формирования уникальных значений.

5. Синонимы. Псевдонимы объектов базы данных (таблиц, представлений и последовательностей). Синонимы могут обеспечивать public доступ к часто используемым объектам и могут скрывать расположение и владельца объекта.

Для работы с этими базовыми объектами базы данных Oracle Power Objects обеспечивает графические интерфейсы.

Внешние базы данных (такие, как ORACLE7 Server ) могут содержать ряд дополнительных объектов базы данных (такой как кластеры, пакеты, снимки и роли) которые часто используются для обеспечения дополнительных уровней защиты или повышения эффективности системы базы данных, Чтобы обратиться к этим объектам из Oracle Power Objects, необходимо выполнить команды SQL, используя команду Oracle Basic EXEC SQL или функцию SQLLOOKUP.

Объекты базы данных не имеют таких свойств и методов, какие имеются у объектов приложения, так как они не создаются посредством объектных механизмов Oracle Power Objects.У объектов базы данных имеются ассоциированные листы свойств, в которые, однако. Нельзя добавлять пользовательские свойства или методы. Большинство объектов базы данных имеет лишь свойство Name, которое предусмотрено для обращений разработчика. Свойство Name может быть изменено через лист свойств во время разработки, и при этом объект будет переименован в базе данных, но это свойство нельзя изменять посредством Oracle Basic в период выполнения.

Над объектами базы данных модно выполнять два общих типа операций: операции определения данных и операции манипулирования данными.

Операции определения данных манипулируют структурой объекта базы данных. Они включают создание, удаление и изменение структуры объектов базы данных. Обычно эти операции выполняются проектировщиком во время разработки.

Операции манипулирования данными управляют данными, сохраненными в объекте или доступными через объект. Они включают запросы, вставку, обновление и удаление строк данных. Операции манипулирования данными применяются, главным образом, к таблицам и представлениям, хотя, иногда они используются с другими объектами базы данных, такими как последовательности. Эти операции могут выполняться как разработчиком, так и пользователем в период выполнения.

При создании, удалении или изменении объекта базы данных из Oracle Power Objects, специфицированные изменения автоматически преобразуются в операторы SQL, которые затем передаются для выполнения процессору базы данных. Непосредственно Oracle Power Objects не выполняет никаких модификаций объектов и их данных.

Каждый тип операции имеет ассоциированный набор команд SQL: операции определения данных используют команды Языка Определения Данных (DDL), в то время как операции манипулирования данными используют команды Языка Манипулирования Данными (DML).

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

Доступные типы объектных привилегий для разных баз данных различны, что отражается в соответствующем синтаксисе SQL для представления или отмены привилегий. Базы данных Blaze не имеют объектных привилегий – все пользователи базы данных Blaze имеют привилегии для всех объектов в базе данных.

Предоставление или отмена привилегий выполняется через операторы SQL. Информация относительно предоставления и отмены привилегий приводится в документации по конкретной базе данных.

Имена объектов базы данных должны отвечать правилам именования объектов для базы данных, в которой они сохранены. Эти правила различны для разных баз данных.

Среда разработки

Среда разработки OPO внешне напоминает ставшую уже стандартной среду Visual Basic. Верхний уровень иерархии объектов OPO - это объект ы File, изображенных в виде иконок на основном окне среды разработки и которых может быть три типа :

Приложения (Application).

Oracle Power Objects

Объекты Базы Данных (Database session).

Oracle Power Objects

Библиотеки (Library).

Oracle Power Objects

Каждая такая иконка может быть раскрыта в окно, содержащее объекты нижнего уровня иерархии. Копирование объектов между однотипными группами осуществляется простым переносом иконок .

При создании и редактировании объектов появляется инструментальная линейка и окно редактирования свойств и методов.

Oracle Power Objects

В процессе разработке можно запускать на выполнение как все приложение, так и отдельные экраны (формы) и отчеты. Большую помощь при отладке может оказать отладчик, функционально аналогичный отладчику в Visual Basic.
Важно отметить возможность работать с объектами Базы Данных (таблицами, представлениями, индексами и т.д.) непосредственно из среды разработки OPO.
Вместе с тем, представление объектов в виде иконок и раскрывающихся окон удобно только при весьма небольшом их количестве. Когда число используемых объектов превышает несколько десятков , становиться очень сложно ориентироваться среди них и разбираться среди множества раскрытых и мешающих друг другу окон. Реализованный в Forms 4.5 Навигатор Объектов [3] заметно более нагляден и удобен. Большое число иконок в окне, а число объектов (таблиц, представлений , индексов и последовательностей) в даже небольшой БД превышает несколько сотен, в Windows 3.1/3.11 вызывает истощение системных ресурсов и приводит к ее краху.

Структура приложения

Приложение можно разделить на четыре структурные части :

Oracle Power Objects

Application и RecordSet представляют обращенную к пользователю часть приложения (Front End), Session и Database являются частью выполняющегося на сервере приложения (Back End). В зависимости от задач, требований к сетевому трафику и характеристик аппаратуры необходимо распределять логику работу приложения между этими частями. Обработку транзакций и поддержку целостности данных можно осуществлять во всех структурных частях приложения.
Основной частью (и видимой пользователю) частью приложения является форма или экран (Form). При создания экранов можно применять все стандартные элементы Windows приложений - поля и метки, различного рода кнопки, списки и т.д. Экраны могут содержать вложенные экраны.
Удобным является механизм запроса по форме (Query By Form). Для отображаемого в данный момент экрана можно вызвать экран для ввода запроса, представляющий собой копию первого экрана, в поля которого можно ввести условия и критерии выборки. В результате на первом экране будет информация в соответствии с заданными условиями. При этом экран запроса тоже остается видимым.

Обработка транзакций

Любая транзакция должна пройти через несколько уровней, каждый из которых играет свою роль в управлении обработкой транзакций.

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

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

3. Сеансы. После прохождения уровней приложения и набора записей транзакция должна затем пройти через сеанс. Чтобы фиксировать или аннулировать транзакции, ассоциированные с данным сеансом, для объекта-сеанса могут вызываться несколько методов.

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