Базы данных. 12
Содержание
Введение. …………………………………………………………………….….3
Oracle Power Objects. ……………………………………………………… …....4
Аспекты и компоненты приложения…….. ………………………………. ... 4
Объектно-ориентированная
разработка...…………………………………....
Методы
……………………………………………………………………....
Внешний интерфейс:
Наборы записей и связанные
Разработка в объектно-ориентированной среде.. ………………………...…... 9
Прочие аспекты…………………………………………
Сервер: Сеансы
и базы данных…………………………….............
Базы
данных………………………………………………………………
Базы данных Blaze …………………………………………………………...13
ORACLE7
Server…………………………………………………………..
Базы данных SQL Server……………………………………………………..16
Объекты
базы данных………………………………………………………..
Среда разработки……………………………………………………
Структура приложения ……………………………………………………...….21
Обработка транзакций ……………………………………………………..…...22
Подход к разработке, реализуемый в Oracle Power Objects ……………..…...22
Если
начать с клиента……………………………………
Если
вначале разрабатывается
следующие
вопросы: …………………………………………………….
Если начинать с сервера базы данных …………………………………...…25
Начиная проектирование с сервера базы данных, необходимо ответить на
следующие
вопросы: ………………………………………………………
Как проектировать пользовательские классы и библиотеки …………..….26
Заключение ……………………………………………………………………..28
Список литературы
……………………………………………………………..29
Введение
Мощные современные системы управления базами данных, такие как ORACLE 7, SQL Server и другие, применяются, как правило, для поддержания и обработки больших и очень больших баз данных, к информации которых одновременно обращается множество пользователей. В этих условиях, обеспечение каждого из этих пользователей или группы пользователей неким средством (приложением) для доступа к данным локальной или удаленной базы данных становится весьма сложной задачей, требующей существенных трудозатрат. Решить эту задачу можно либо путем привлечения значительных сил программистов и разработчиков, либо применением новых, высокопроизводительных технологий разработки. Объектно-ориентированное, визуальное проектирование – пример успешной реализации второго, интенсивного подхода.
Oracle Power Objects – высококачественный (что характерно для всех
продуктов Oracle Corporation), оригинальный и надежный инструмент для разработки программного обеспечения доступа к базам данных. Он объединяет возможности приложений клиент/сервер с преимуществами объектно-ориентированной модели разработки.
Для построения приложения разработчик должен иметь в своем
распоряжении некоторые конструктивные элементы – объекты. В Oracle Power Objects каждый компонент приложения, от непосредственно базы данных (или серверной части системы) до интерфейса клиента (или внешнего интерфейса) – это объект, который можно идентифицировать и управлять им, используя унифицированные технологии. Всем объектам, с которыми работает проектировщик, независимо от типа объекта, присущи стандартные свойства (характеристики, управляющие поведением объекта) и, в большинстве случаев, методы (программное описание действий объекта) – стандартные или пользовательские.
Такой объектно-
Объекты приложения Power Objects могут быть вполне «осязаемыми» для пользователя, как например, окна диалога, командные кнопки, текстовые поля и т.д. Объекты могут также представлять собой некоторые категории, которые не являются частью пользовательского интерфейса. Это, например, связи базы данных и сеансы пользователя. При построении приложения разработчик программирует действия объектов или задает реакцию этих объектов на некоторые события или состояния среды или приложения.
При построении приложения базы данных очень важно иметь возможность преодолеть ограничения, накладываемые на использование базы данных конкретной платформой. Перед передачей приложения к клиентам производственную среду полезно первоначально отладить и протестировать прототип приложения на локальной базе данных. Закончив отладку приложения, можно затем экспортировать определения всех таблиц, представлений, последовательностей и индексов на удаленный сервер, минимизируя тем самым время его простоя.
Oracle Power Objects позволяет работать с распространенными сетевыми
базами данных, такими как SQL Server и ORACLE7. Кроме того, на уровне клиента Oracle Power Objects обеспечивает связь с Personal Oracle7, а также Blaze – персональной базой данных, поставляемым с Oracle Power Objects. Blaze полностью совместима по структуре и данным с ORACLE7.
В дополнение к этой гибкости при выборе платформы базы данных, Oracle Power Objects ещё более упрощает разработку приложений, автоматизируя многие аспекты доступа к базе данных посредством чрезвычайно развитых функций drag-and-drop. Например, положив мышью описание таблицы на форму, можно автоматически ассоциировать форму с этой таблицей, даже если это объект удаленной базы данных. Эта возможность позволяет разработчику, вместо написания сложного программного кода соединения внешнего интерфейса с сервером базы данных, сосредотачиваться непосредственно на проектировании приложения.
Для пользовательского
используется
Oracle Basic, процедурный язык с поддержкой
SQL, совместимый с Visual Basic for
Application. Если разработчик ранее
программировал приложения в Microsoft Visual
Basic или Microsoft Access – он может быстро
и легко перейти к написанию кода на Oracle
Basic в Power Objects.
Oracle Power
Objects
Аспекты
и компоненты приложения
Процедуры разработки
> Объектно-ориентированная модель разработки
позволяет использовать стандартную методологию
при работе со всеми объектами – от таблиц
и
представлений на сервере базы данных до форм, текстовых полей растровых объектов внешнего интерфейса.
> Развитые механизмы drag-and-
> Автоматизированная обработка
транзакций устраняет необходимость
написания для управления
транзакциями больших
объемов программного кода, а в ряде случаев
позволяет вообще обойтись без программирования.
Объектно-ориентированная
разработка
В общей объектно-ориентированной модели каждый компонент
приложения предоставляется разработчику как объект. Объект имеет два
различных набора характеристик:
> Свойства определяют представление, поведение и другие черты объекта. Цвет фона формы, строка соединения, используемая для открытия сеанса базы данных, и исходная таблица базы данных для отчета – все это свойства тех или иных объектов.
В период выполнения
> Методы – процедуры, которые выполняют некоторую обработку, связанную с объектом. Например, если нажатием командной кнопки требуется открыть форму, необходимо к телу метода Click командной кнопки добавить соответствующий программный код. Код метода записывается на языке программирования Oracle Basic и добавляется к методу через окно редактирования в листе свойств.
Большинство стандартный
частью умолчательного определения объекта) имеют связанную с ними умолчательную обработку. Например, метод формы Open Window загружает форму в память и выводит ее на экран. Если стандартный метод имеет умолчательную обработку, к нему можно добавить некоторый код, который или заменяет умолчательную обработку, или расширяет ее. Как часть умолчательной обработки, один метод может вызывать другой. Это означает, что, если умолчательная обработка для одного метода прерывается, следующий метод в цепочке не будет вызван.
Разработчик может также создавать свои собственные пользовательские
методы,
которые затем добавляются
Методы
Метод определяет поведение объекта при обращении к нему или при
наступлении некоторого события. Например, при вызове формы ее метод Open Window загружает форму в память и выводит ее на экран в интерфейсе приложения. В методах размещается программный код Oracle Basic, посредством которого настраивается работа приложения. Фактически, весь код Oracle Basic инкапсулируется в методах. В этой главе описывается, как вызывать объектные методы и как добавлять к ним код Oracle Dasic.
Методы – это программные
Oracle Power Objects включает набор предопределенных стандартных
методов, большинство из которых включают умолчательную обработку, выполняемую при вызове метода. К объектам можно добавлять также пользовательские методы; пользовательские методы не имеют умолчательной обработки.
Стандартные и
Метод может быть инициирован одним из двух способов:
1. Через событие. Событие – действие, которое имеет место в интерфейсе приложении. События происходят, когда пользователь выполняет в приложении некоторые манипуляции (например, щелчок на элементе управления или закрытие приложения) или в ответ на системное функционирование.
2. Вызовом метода. Метод можно вызвать явно через код Oracle Basic. Если метод – функция, он может возвращать значение, которое можно
использовать где-либо в выражении или в операторе присваивания. Метод- функция используется, подобно встроенной функции Oracle Basic.
Например, метод GetRecordset() – функция. GetRecordset() возвращает
значение типа данного Object, которое можно присваивать переменной.
Переменную можно затем использовать везде, где требуется обращение к объекту набора записей.
Если метод – подпрограмма, его имя используется не подобно функции, в операторе присваивания или выражении, а в виде команды, то есть,
единственный вызов в строке. Подпрограммы не возвращают значения; однако, подпрограмма может изменять переданный ей параметр.
В ходе выполнения, подпрограмме или функции передаются параметры. Эти параметры специфицируются в круглых скобках рядом с именем метода. Параметры функции могут быть переданы по ссылке (умолчание) или по значению.
При передаче параметра по ссылке, фактически, передается указатель на
область
памяти, занятой переменной,
которая используется
для
специфицирования параметра, По ссылке могут быть переданы только
переменные; другие типы выражений автоматически передаются по значению. Любые изменения, проведенные в параметре при выполнении функции, воздействуют на переменную в вызывающем методе.
С другой стороны, при передаче параметра по значению, передается
только
«абстрактное» текущее
Чтобы настроить поведение
В любом методе Oracle Power Objects неявно объявляет набор
переменных. Переменная объявляется для каждого параметра в объявлении метода и имеет тип данного, обозначенный в объявлении. Эти переменные можно использовать в коде, подобно любым другим значениям. Необходимо отметить, что присваивание значений этим переменным имеет смысл, только если параметр был передан по ссылке; параметр, переданный по значению, также может быть установлен, но по выполнении метода значение параметра исчезает.
Для методов-функций
При вводе в метод программного кода Oracle Basic автоматически
переопределяется любая умолчательная обработка, обычно выполняемая этим методом.
Эту установленную по
Умолчательная обработка
вызвана. Следовательно, ей может предшествовать или выполняться после ее пользовательский код Oracle Basic. Если вызываемый стандартный метод требует параметров, то их необходимо передать в вызове процедуры Inherited. Имя_метода.
Умолчательная обработка для метода часто включает вызов в
предопределенном
порядке ряда других методов, В таких
случаях, прежде, чем поток управления
возвращается в вызывающую процедуру,
сразу после
оператора Inherited. Имя_метода выполняются эти методы умолчательной обработки.
Любой код, который добавляется к методу, может нуждаться в
корректировке. Процедуры не всегда сразу реализуют идею разработчика так, как он это предполагает при написании программного кода.
Отладка – процесс анализа, корректировки и тестирования кода,
выполняемый
с целью добиться требуемого
порядка выполнения приложения
и получения требуемых результатов.
Когда выполнение сталкивается
с проблемами, отладчик Oracle Power Objects
показывает, где возникает эта
проблема, и позволяет исследовать значения
и пошагово пройти через
код, чтобы локализовать ее.
Внешний
интерфейс: Наборы записей
и связанные контейнеры
В клиентских системах с базой данных могут взаимодействовать два
различных вида объектов: наборы записей и связанные контейнеры.
Набор записей (объект recordset) – набор строк, запрошенных из таблицы
или представления, который хранится в памяти системы клиента. Обычно, для снижения информационной нагрузки сети и экономии памяти клиента, приложение хранит только подмножества всего набора записей. Когда требуется вывести на экран следующие записи или когда приложение должно выполнить некоторую агрегатную операцию, включающую все записи таблицы или представления, оно делает запрос большего количества строк.
Когда пользователь или приложение проводит изменения записей,
изменения регистрируются сначала в наборе записей, но не в базе данных. В некоторый момент, приложение передает изменения в базу данных. В ходе этой процедуры приложение может устанавливать блокировки данных, предотвращая редактирования той же самой записи другими пользователями; оно может также отслеживать изменения, проведенные в записи с момента первоначального запроса.
Наборы записей не обязательно должны включать все столбцы из связанных таблиц или представлений. В большинстве случает, когда набор записей связывается с контейнером, он включает только те столбца, которые требуются для вывода на экран данных в текстовых полях, списках и других элементах управления контейнера.
Большинство наборов записей
связывается с некоторым
Связанный контейнер – объект интерфейса, который выводит на экран
данные,
полученные из таблицы или представления
в результате запроса SQL. После
выполнения запроса значения из столбцов
набора записей отображаются в
связанных элементах управления
контейнера. В Oracle Power Objects.
Связанным контейнером может
быть форма, отчет,
внедренная форма, пользовательский класс или окно репитера. Не все связываемые контейнеры должны быть связаны с источником записей: например, многие окна диалога – это формы, которые не имеют связанных таблиц или представлений. Однако, все связанные контейнеры имеют ассоциированные наборы записей, которые заполняются данными запросов базы данных при загрузке контейнера в память.
Внутри связанного контейнера располагаются связанные элементы
управления, которые соединены со столбцами связанного набора записей. Например, в форме, предназначенной для работы с записями заказчиков, несколько текстовых полей выводят на экран имя заказчика, адрес, номер телефона и другую важную информацию, Информация в каждом текстовом поле происходит из различных столбцов набора записей.
Контейнер – лишь одно из многих
типов объектов приложения. Определения
объектов приложений сохраняются
в файлах. РОА и, в конечном
счете, компилируются в исполняемое
приложение. Другие объекты
приложения – элементы управления
(например, командные кнопки),
статические объекты (например,
линии). OLE-объекты, импортируемые
растровые рисунки и пользовательские
классы.
Разработка
в объектно-ориентированной
среде
В дополнение к изменению характеристик отдельных объектов,
необходимо также определить отношения между объектами. Например, при связывании формы с таблицей определяется отношение между объектом приложения и объектом базы данных.
Если данные, отбираемые из таблицы и представленные в форме,
переупорядочиваются, отношение между этими двумя объектами
переопределяется. Для командной кнопки, которая, будучи нажата, открывает форму, действует несколько иная зависимость: отношение между командной кнопкой и формой определяет код метода, который добавляется к методу Click командной кнопки.
Каждый объект имеет большой
интервал стандартных свойств
В сущности, объектно-ориентированная
разработка лишь быстро фиксирует
оформившееся представление разработчика
относительно приложения. Зная набор
средств того или иного инструментального
продукта, перед выполнением фактической разработки программист рисует в своем воображении, какие объекты ему требуются, какие характеристики они должны иметь и как действие, которое выполняется над одним объектом (например, командной кнопкой) повлияет на другой (например, форму). Для работы с почти каждым объектом в Oracle Power Objects используется общая методология. Независимо от того, является объект сеансом базы данных или переключателем, для управления объектом разработчик определяет или изменяет одно из свойств или
вызывает
один из методов этого объекта.
Прочие
аспекты
Помимо изложенного, объектно-
1. Модульность. В объектно-ориентированной среде разработки, объекты должны заключать в себе полное определение их характеристик. Никакие определения относительно методов и свойств объекта не должны располагаться где-либо вне данного объекта. Эта черта делает возможным копирование объекта в другие объекты – формы, отчеты, пользовательские классы, сеансы или приложения без потерь каких-либо показателей поведения, представления или других важных характеристик.
2. Иерархическая структура включения. В объектно-ориентированном
приложении некоторые классы объектов могут содержать другие объекты. Например, форма может включать элементы управления, статические объекты и даже другие контейнеры (такие как окна репитеров). Объектно-ориентированные инструментальные средства разработки, позволяют определять, какие объекты будут содержать другие объекты, и выстраивать объектную иерархию сверху (приложение) до низу (например,
командная кнопка внутри формы)
3. Возможность многократного
