Проектирование БД в ORACLE
Содержание.
Введение…………………………………………………………
Глава 1. Теоретическая часть………………………………………………….6
1.1. Характеристика Базы данных ………………………………………………6
1.2. Объекты Базы данных………………………………………………………..8
1.3. Аспекты и компоненты приложения………………………………………13
1.4. Проектирование Базы данных ……………………………………………..18
Глава 2. Практическая часть………………………………………………...20
2.1 Разработка инфологической модели ………………………………………20
2.2 Разработка базы данных для хранения и обработки информации………21
2.3 Разработка программного приложения……………………………………22
Приложение……………………………………………………
Заключение …………………………………………………
Список литературы…………………………………
Введение
Мощные современные системы управления базами данных, такие как ORACLE, SQL Server и другие, применяются, как правило, для поддержания и обработки больших и очень больших баз данных, к информации которых одновременно обращается множество пользователей. В этих условиях, обеспечение каждого из этих пользователей или группы пользователей неким средством (приложением) для доступа к данным локальной или удаленной базы данных становится весьма сложной задачей, требующей существенных трудозатрат. Решить эту задачу можно либо путем привлечения значительных сил программистов и разработчиков, либо применением новых, высокопроизводительных технологий разработки. Объектно-ориентированное, визуальное проектирование – пример успешной реализации второго, интенсивного подхода.
Oracle Power Objects – высококачественный (что характерно для всех продуктов Oracle Corporation), оригинальный и надежный инструмент для разработки программного обеспечения доступа к базам данных. Он объединяет возможности приложений клиент/сервер с преимуществами объектно-ориентированной модели разработки. Для построения приложения разработчик должен иметь в своем распоряжении некоторые конструктивные элементы – объекты. В Oracle Power Objects каждый компонент приложения, от непосредственно базы данных (или серверной части системы) до интерфейса клиента (или внешнего интерфейса) – это объект, который можно идентифицировать и управлять им, используя унифицированные технологии. Всем объектам, с которыми работает проектировщик, независимо от типа объекта, присущи стандартные свойства (характеристики, управляющие поведением объекта) и, в большинстве случаев, методы (программное описание действий объекта) – стандартные или пользовательские. Такой объектно-ориентированный подход к разработке упрощает задачу создания приложения и более близко и точно, чем другие модели разработки, отражает представление проектировщика относительно компонентов приложения и их взаимосвязи. Обычно, при работе с определением объекта (формы, отчета, таблицы), разработчик задумывается о том, как управлять аспектами этого объекта. При этом все существенные характеристики объекта определяются значениями его свойств. Объекты приложения Power Objects могут быть вполне «осязаемыми» для пользователя, как например, окна диалога, командные кнопки, текстовые поля и т.д. Объекты могут также представлять собой некоторые категории, которые не являются частью пользовательского интерфейса. Это, например, связи базы данных и сеансы пользователя. При построении приложения разработчик программирует действия объектов или задает реакцию этих объектов на некоторые события или состояния среды или приложения. При построении приложения базы данных очень важно иметь возможность преодолеть ограничения, накладываемые на использование базы данных конкретной платформой. Перед передачей приложения к клиентам производственную среду полезно первоначально отладить и протестировать прототип приложения на локальной базе данных. Закончив отладку приложения, можно затем экспортировать определения всех таблиц, представлений, последовательностей и индексов на удаленный сервер, минимизируя тем самым время его простоя.
Oracle Power Objects позволяет работать с распространенными сетевыми базами данных, такими как SQL Server и ORACLE. Кроме того, на уровне клиента Oracle Power Objects обеспечивает связь с Personal Oracle, а также Blaze – персональной базой данных, поставляемым с Oracle Power Objects. Blaze полностью совместима по структуре и данным с ORACLE. В дополнение к этой гибкости при выборе платформы базы данных, Oracle Power Objects ещё более упрощает разработку приложений, автоматизируя многие аспекты доступа к базе данных посредством чрезвычайно развитых функций drag-and-drop. Например, положив мышью описание таблицы на форму, можно автоматически ассоциировать форму с этой таблицей, даже если это объект удаленной базы данных. Эта возможность позволяет разработчику, вместо написания сложного программного кода соединения внешнего интерфейса с сервером базы данных, сосредотачиваться непосредственно на проектировании приложения.
Для пользовательского
Глава 1 Теоретическая часть
1.1. Характеристика Базы данных.
База данных – система, которая хранит и организует информацию. Oracle
Power Objecs позволяет формировать приложения, которые обращаются к информации, сохраненной в реляционной базе данных, и коллекции объектов базы данных, включая таблицы, представления, индексы, последовательности и синонимы. Процессор базы данных координирует пользовательский доступ к информации базы данных.
В Oracle Power Objects пользователь взаимодействует с базой данных
через сеанс базы данных – объект, который содержит информацию, необходимую для установления соединения с базой данных. В этой главе описываются объекты-сеансы базы данных и общие методы работы с ними.
Далее описываются типы баз данных, поддерживаемые Oracle Power Objects внутренние (базы данных Blaze) и внешние базы данных
Внутренние базы данных создаются и поддерживаются Oracle Power
Objects. Базы данных Blaze компактны и эффективны, не требуют для выполнения большого количества системных ресурсов. Объекты базы данных Blaze хранятся на жестком диске в единственном файле.
Внешние
базы данных создаются и
Рассматриваемая версия Oracle Power Objects поддерживает следующие
внешние базы данных:ORACLE Server и SQL Server.
ORACLE Server – мощная, высокопроизводительная система управления реляционными базами данных Oracle Corp., которая
эксплуатируется на широком разнообразии программно-аппаратных платформ.
Надежные и совершенные базы данных SQL Server поставляются компаниями Microsoft и Sybase. Oracle Power Objects обеспечивает доступ к базам данных SQL Server через драйвер DBLIB.
Сеанс базы данных – объект, представляющий соединение между
пользовательским приложением и базой данных. Сеанс базы данных,
обеспечивает связь между внешним интерфейсом и серверной частью системы базы данных.
Каждый объект-сеанс базы данных сохраняется в собственном дисковом файле (в Windows этот файл имеет расширение POS). Объекты-сеансы базы данных представлены пиктограммой в окне Main рабочего стола Oracle Power Objects.
Объект-сеанс может быть в одном из двух состояний: неактивный или
активный. Неактивный сеанс – не соединенный в данный момент с базой данных. Через неактивный сеанс нельзя вывести на экран объекты базы данных. Активный сеанс – соединенный в данный момент с базой данных, он содержит все объекты базы данных, которые могут быть доступны через соединение. Активное состояние сеанса отображается пиктограммой включенного
соединителя.
Пользователь
обращается к объекту-сеансу
объекты базы данных. Однако, объект-сеанс фактически не содержит никаких объектов. Вместо этого, он содержит информацию, необходимую для установления соединения базы данных – например, он может содержать имя пользователя, пароль и сетевой адрес учетной записи в базе данных сервера. Когда приложение запрашивает информацию из сеанса базы данных, он автоматически передает соответствующий запрос базе данных и обрабатывает результат.
Каждый объект-сеанс базы данных обеспечивает доступ к единственной
логической структуре (схеме) или учетной записи пользователя в базе данных. Сеанс обеспечивает полный доступ к объектам и функциям учетной записи, хотя некоторые возможности базы данных доступны только через код SQL (например, в ORACLE Server необходимо писать пользовательский код SQL, чтобы создавать или обращаться к объекту-снимку). Во время разработки сеанс базы данных содержит пиктограммы, представляющие объекты базы данных, принадлежащие учетной записи. В окне сеанса присутствуют только наиболее общие типы объектов базы данных (таблицы, представления, индексы и последовательности). Сеанс не показывает объекты базы данных в других логических структурах или учетных записях, к которым пользователь имеет доступ.
Объекты-сеансы базы данных не зависят от объектов приложения, Эта
независимость обеспечивает гибкость в конфигурировании соединения
приложения с базами данных. Например, несколько приложений могут использовать один и тот же сеанс базы данных или единственное приложение может использовать одновременно много различных сеансов. Один сеанс базы данных можно также использовать для соединения в разное время с различными базами данных. Например, через сеанс можно в процессе разработки и отладки приложения соединяться с базой данных Blaze, а затем при развертывании законченного приложения в производственной среде через тот же сеанс подключиться к ORACLE Server.
При создании
объекта-сеанса базы данных
жестком диске, содержащий информацию относительно того, как должно быть выполнено соединение с базой данных.
1.2. Объекты Базы данных.
Объекты базы данных хранят и организуют информацию в реляционных базах данных. В Oracle Power Objects объекты базы данных представлены пиктограммами в окне сеанса базы данных.
Объекты базы данных, в отличие от объектов приложения, не создаются и не поддерживаются непосредственно Oracle Power Objects. Все процедуры, касающиеся объектов базы данных, выполняются процессором базы данных – компонентом базы данных, в которой хранятся объекты. Так как процессоры реляционных баз данных имеют различные возможности, доступные объектные типы и функции для разных баз данных различны.
Объекты базы данных формируют «сервер базы данных» приложения Oracle Power Objects. При разработке приложения объекты базы данных связываются с объектами приложения (такими, как формы и отчеты). Объекты приложения обеспечивают окно в объекты базы данных, предоставляя сохраненную информацию в полезном формате. Процесс соединения объектов базы данных с объектами приложения называется связыванием.
Объекты базы данных визуально содержатся внутри объекта-сеанса. В
каждом окне сеанса представлены объекты, принадлежащие единственному пользователю базы данных.
В некоторых базах данных объекты каждого пользователя хранятся в
отдельной логической структуре. Логическая структура – именованная
коллекция объектов внутри базы данных. С каждым пользователем базы данных ассоциирована логическая структура того же имени. Например, пользователь STUDENT имеет логическую структуру STUDENT. Для баз данных, которые поддерживают логические структуры, каждый объект-сеанс базы данных обеспечивает доступ к единственной логической структуре пользователя.
Окно сеанса базы данных не обязательно показывает все объекты,
доступные пользователю – в нем представлены только объекты, для которых пользователь является владельцем (объекты, созданные этим пользователем). В окне сеанса базы данных не показаны public синонимы или объекты, принадлежащие другим пользователям для доступа к которым текущий пользователь имеет привилегии.
Ниже приводятся
типы объектов базы данных,
присущие большинству баз
данных, с которыми может
1. Таблицы. Объекты базы данных, которые фактически хранят данные. Отдельная таблица чаще всего хранит информацию по конкретной теме (например, служащие компании или адреса заказчиков). Информация в таблице организована в строки и столбцы.
2. Представления. Настроенные обзоры данных из одной или больше таблиц. Представление – виртуальная таблица, которая позволяет связывать и объединять данные из несколько таблиц и представлений (называемых
исходными таблицами). Представления, подобно таблицам, организованы в строки и столбцы; однако, представления непосредственно не содержат никаких данные – они создаются логически как результат определения в операторе SQL. Представления позволяют обрабатывать несколько таблиц и ли представлений как один объект базы данных.
3. Индексы. Обеспечивают быстрый доступ к отдельным строкам в таблице. Индексы хранят «указатели» на каждую строку в таблице в формате, оптимизированном для быстрой сортировки и поиска данные. Будучи создан, индекс автоматически поддерживается и используется базой данных всякий раз при обращении к индексированным столбцам.
4. Последовательности.
Объекты, генерирующие ряд
целых чисел, которые могут
применяться для назначения уникальных
идентификаторов строкам
5. Синонимы. Псевдонимы
объектов базы данных (таблиц,
представлений и
Для работы с этими базовыми объектами базы данных Oracle Power Objects обеспечивает графические интерфейсы.
Внешние базы данных (такие, как ORACLE Server ) могут содержать ряд дополнительных объектов базы данных (такой как кластеры, пакеты, снимки и роли) которые часто используются для обеспечения дополнительных уровней защиты или повышения эффективности системы базы данных, Чтобы обратиться к этим объектам из Oracle Power Objects, необходимо выполнить команды SQL, используя команду Oracle Basic EXEC SQL или функцию SQLLOOKUP.
Объекты
базы данных не имеют таких
свойств и методов, какие
Над объектами
базы данных модно выполнять
два общих типа операций:
операции определения данных
и операции манипулирования
Операции
определения данных манипулируют
структурой объекта базы данных.
Они включают создание, удаление
и изменение структуры
Операции
манипулирования данными
При создании,
удалении или изменении
Power Objects, специфицированные изменения автоматически преобразуются в операторы SQL, которые затем передаются для выполнения процессору базы данных. Непосредственно Oracle Power Objects не выполняет никаких модификаций объектов и их данных.
Каждый
тип операции имеет
Типы операций,
которые пользователь может
Доступные типы объектных привилегий для разных баз данных различны, что отражается в соответствующем синтаксисе SQL для представления или отмены привилегий. Базы данных Blaze не имеют объектных привилегий – все пользователи базы данных Blaze имеют привилегии для всех объектов в базе данных.
Предоставление
или отмена привилегий
Имена объектов базы данных должны отвечать правилам именования
объектов для базы данных, в которой они сохранены. Эти правила различны для разных баз данных.
1.3. Аспекты и компоненты приложения.
Процедуры
разработки приложений разных
типов ставят разработчика
Объектно-ориентированная
модель разработки позволяет
использовать стандартную
Развитые механизмы drag-and-drop помогают быстро связать формы и отчеты (объекты внешнего интерфейса) с таблицами и представлениями (объектами данных).
Автоматизированная
обработка транзакций устраняет
необходимость написания для
управления транзакциями больших
объемов программного кода, а
в ряде случаев позволяет
Объектно-ориентированная разработка.
В общей объектно-ориентированной модели каждый компонент
приложения предоставляется разработчику как объект. Объект имеет два
различных набора характеристик:
Свойства определяют представление, поведение и другие черты объекта. Цвет фона формы, строка соединения, используемая для открытия сеанса базы данных, и исходная таблица базы данных для отчета – все это свойства тех или иных объектов.
В период
выполнения приложение может
оценивать значение, назначенное
свойству, и, когда требуется,
назначать ему новое значение.
Методы – процедуры, которые выполняют некоторую обработку, связанную с объектом. Например, если нажатием командной кнопки требуется открыть форму, необходимо к телу метода Click командной кнопки добавить соответствующий программный код. Код метода записывается на языке программирования Oracle Basic и добавляется к методу через окно редактирования в листе свойств.
Большинство стандартный методов (то есть, методов, которые являются
частью умолчательного определения объекта) имеют связанную с ними умолчательную обработку. Например, метод формы Open Window загружает форму в память и выводит ее на экран. Если стандартный метод имеет умолчательную обработку, к нему можно добавить некоторый код, который или заменяет умолчательную обработку, или расширяет ее. Как часть умолчательной обработки, один метод может вызывать другой. Это означает, что, если умолчательная обработка для одного метода прерывается, следующий метод в цепочке не будет вызван.
Разработчик может также создавать свои собственные пользовательские
методы, которые затем добавляются объекту.
Методы
Метод определяет поведение объекта при обращении к нему или при наступлении некоторого события. Например, при вызове формы ее метод Open Window загружает форму в память и выводит ее на экран в интерфейсе приложения. В методах размещается программный код Oracle Basic, посредством которого настраивается работа приложения. Фактически, весь код Oracle Basic инкапсулируется в методах. В этой главе описывается, как вызывать объектные методы и как добавлять к ним код Oracle Dasic.
Методы
– это программные процедуры
– функции или подпрограммы.
Oracle Power Objects включает набор предопределенных стандартных
методов, большинство из которых включают умолчательную обработку, выполняемую при вызове метода. К объектам можно добавлять также пользовательские методы; пользовательские методы не имеют умолчательной обработки.
Стандартные
и пользовательские методы
Метод может быть инициирован одним из двух способов:
1. Через событие.
Событие – действие, которое имеет
место в интерфейсе
2. Вызовом метода.
Метод можно вызвать явно
использовать где-либо в выражении или в операторе присваивания. Метод- функция используется, подобно встроенной функции Oracle Basic.
Например, метод GetRecordset() – функция. GetRecordset() возвращает
значение типа данного Object, которое можно присваивать переменной.
Переменную можно затем использовать везде, где требуется обращение к объекту набора записей.
Если метод – подпрограмма, его имя используется не подобно функции, в операторе присваивания или выражении, а в виде команды, то есть,
единственный вызов в строке. Подпрограммы не возвращают значения; однако, подпрограмма может изменять переданный ей параметр.
В ходе
выполнения, подпрограмме или функции
передаются параметры. Эти параметры
специфицируются в круглых
скобках рядом с именем
метода. Параметры функции
могут быть переданы по
ссылке (умолчание) или по
значению. При передаче параметра
по ссылке, фактически, передается
указатель на область памяти,
занятой переменной,
которая используется
для специфицирования параметра,
По ссылке могут быть
переданы только переменные,
другие типы выражений автоматически
передаются по значению. Любые
изменения, проведенные в
параметре при выполнении
функции, воздействуют на
С другой стороны, при передаче параметра по значению, передается
только «абстрактное» текущее значение, присвоенное параметру, без ссылки непосредственно на сам параметр. В этом случае изменения, проведенные в параметре, не имеют никакого эффекта вне подпрограммы или функции. Все выражения, не содержащие переменных, автоматически передаются по значению. Переменные также могут быть переданы явно по значению, если в объявлении функции используется ключевое слово BYVL. Чтобы создать пользовательскую функцию или подпрограмму, необходимо объявить ее и ассоциировать ее с объектом в приложении .Чаще всего функцию или подпрограмму добавляют к форме, классу или отчету, откуда она вызывается, но фактически, метод можно добавлять к любому объекту приложения.
Чтобы настроить поведение метода, к нему добавляется программный код. Код метода может быть добавлен к любому стандартному или пользовательскому методу Oracle Power Objects.
В любом методе Oracle Power Objects неявно объявляет набор
переменных. Переменная объявляется для каждого параметра в объявлении метода и имеет тип данного, обозначенный в объявлении. Эти переменные можно использовать в коде, подобно любым другим значениям. Необходимо отметить, что присваивание значений этим переменным имеет смысл, только если параметр был передан по ссылке; параметр, переданный по значению, также может быть установлен, но по выполнении метода значение параметра исчезает.
Для
методов-функций возвращаемое
При вводе в метод программного кода Oracle Basic автоматически
переопределяется любая умолчательная обработка, обычно выполняемая этим методом.
Эту установленную
по умолчанию обработку
можно, однако, выполнять, добавляя
к коду метода синтаксис
Умолчательная обработка выполняется в точке кода метода, где она
вызвана. Следовательно, ей может предшествовать или выполняться после ее пользовательский код Oracle Basic. Если вызываемый стандартный метод требует параметров, то их необходимо передать в вызове процедуры Inherited. Имя_метода.
Умолчательная обработка для метода часто включает вызов в предопределенном порядке ряда других методов, В таких случаях, прежде, чем поток управления возвращается в вызывающую процедуру, сразу после оператора Inherited. Имя_метода выполняются эти методы умолчательной обработки.