DDE-интерфейс. Это технология динамического связывания объектов используемая в операционной системе Windows 3.x.. С ее помощью осуществляется взаимодействие приложений-клиентов, которым требуются данные, с приложениями-серверами эти данные предоставляющие. Для применения этой технологии требуется использование соответствующих программных средств, поддерживающих функционирование DDE-клиента. С другой стороны в качестве серверов необходимо использовать приложения, обеспечивающие режим DDE-сервера. К числу последних относятся такие программные приложения, как Microsoft Access, Microsoft Excel и ряд других. В СУБД SYBASE SQL Anywhere роль DDE-сервера выполняет WSQL (Watcom SQL) DDE Server.
Высокоуровневый собственный интерфейс WSQL HLI (Watcom SQL High-level interface) обеспечивает на "высоком" уровне взаимодействие между SQL Anywhere и приложениями в средах операционных систем Windows 3.x, Windows 95/98, OS/2 и Windows NT. Данный интерфейс реализован для систем программирования аналогичных Visual Basic (для Windows 95/98 и Windows NT) и REXX (для OS/2).
СУБД SYBASE SQL Anywhere имеет в своем составе сетевой и автономный варианты СУБД.. Эти варианты реализованы в виде компонентам SQL Anywhere server/client и SQL Anywhere engine. SQL Anywhere server/client представляет сетевой вариант СУБД. Он организует взаимодействием приложений с базами данных в рамках локальной вычислительной сети по технологии "клиент-сервер".
ПРИМЕЧАНИЕ
Кроме локальной сети, СУБД SYBASE SQL Anywhere предоставляет вам возможность использовать технологию "клиент-сервер" и в рамках сети Internet. Для этого необходимо, чтобы на компьютере с сервером базы данных был организован Web-сервер и в состав его программного обеспечения входило приложение SYBASE Netlmpact Dynamo.
Сетевой вариант включает в себя удаленный сервер и клиентскую компоненту; SQL Anywhere server и SQL Anywhere client, соответственно. Функционирование СУБД в рамках сети заключается в следующем. На одной ЭВМ, играющей роль сервера базы данных, запускается удаленный сервер – SQL Anywhere server. Его задача состоит в ожидании запросов от клиентских ЭВМ, их обработке и отправлении результатов клиентов. Во время работы сервера на клиентских ЭВМ функционирует компонента SQL Anywhere client. Она принимает от клиентских приложений запросы.. Эти запросы представляют собой операторы языка SQL, например, SELECT (выбрать данные), UPDATE (модифицировать данные), CALL (вызвать хранимую процедуру) и другие. Полученные запросы компонента SQL Anywhere client отправляет по сети серверу базы данных и ожидает возвращение от него результатов этих запросов.
Компонента SQL Anywhere engine является автономным вариантом рассматриваемой СУБД и представляет собой локальный сервер баз данных. Он реализует технологию "клиент-сервер" в условиях, когда сервер и клиенты функционирует на одной ЭВМ. База данных хранится на этой же ЭВМ. Сервер принимает запросы непосредственно от приложений, обрабатывает их и отправляет приложениям результаты запросов. Наличие такого варианта позволяет проводить автономную отладку приложений. Это имеет большое значение, так как на этапе автономной отладке приложения находятся еще в "сыром" состоянии. Данное обстоятельство может сыграть плохую службы при их отладке в сетевом варианте СУБД, когда используемая база данных является общим ресурсом большого количества пользователей.
Клиентские приложения не различают с каким вариантом СУБД они работают. Одни и те же запросы выполняются для пользователя совершенно одинаково по одним и тем же правилам.
ПРИМЕЧАНИЕ
С точки зрения пользователя функции удаленного (SQL Anywhere engine) и локального (SQL Anywhere server) серверов идентичны. В связи с этим в дальнейшем в рамках данного разделом под термином "сервер" будем понимать компоненту SQL Anywhere server или SQL Anywhere engine, если не требуется подчеркнуть их различие.
Схема взаимодействия приложений с базой данных в СУБД SYBASE SQL Anywhere приведена на рис. 1.
Рис. 1. Взаимодействие приложений-клиентов с базой данных в различных вариантах СУБД SYBASE SQL Anywhere:
а) Автономный вариант;
б) Сетевой вариант.
Компоненты SQL Anywhere server/client и SQL Anywhere engine составляют основу СУБД. Однако наряду с ними в состав СУБД входит и ряд других компонентов. Все вместе эти компоненты составляют комплект поставки SQL Anywhere, в который входят:
SQL Anywhere server/client – сетевой вариант СУБД..
SQL Anywhere engine – автономный вариант СУБД;
SQL Remote – компонента поддержания режима репликаций;
Sybase SQL Central – утилита администрирования баз данных;
ISQL (Interactive SQL) – утилита интерактивного взаимодействия с базами данных;
набор дополнительных утилит для создания баз данных, их сжатия, уничтожения и т.д.
Приведенные компоненты являются элементами стандартной поставки. Кроме стандартной, рассматриваемая СУБД может предлагаться в виде профессиональной поставки. Она имеет еще большее число составляющих. Компоненты стандартной поставки будут рассмотрены далее.
Базы данных, создаваемые СУБД SYBASE SQL Anywhere, представляют собой реляционные базы данных. Эти базы данных состоят из совокупности объектов. Такими объектами являются:
Таблицы данных – хранят данные, составляющие основное содержание базы данных.
Ключи – совокупности атрибутов, образующих ключи (первичные и внешние), предназначенные для осуществления ускоренного поиска данных и обеспечения ограничений ссылочной целостности.
Индексы – специальные таблицы, предназначенные для быстрого поиска требуемой информации в таблицах данных.
Представления (Views) – связанные совокупности подмножеств таблиц данных, предоставляемых пользователям для ограничения их доступа к таблицам данных. При этом, к одним таблицам доступ запрещается совсем, а в других таблицах доступ разрешается только к некоторым записям этих таблиц.
Хранимые процедуры и функции- хранимые в базе данных подпрограммы на языке SQL, воспользоваться которые может любой пользователь, имеющий на это право.
ПРИМЕЧАНИЕ
В СУБД SYBASE SQL Anywhere используется диалект языка SQL – Watcom SQL. Он соответствует стандартам ANSI SQL/89 Level 2 и IBM SAA. Кроме того, используемый диалект SQL поддерживает новые возможности и расширения стандартов ANSI SQL/92 и IBMs DB2
Триггеры – подпрограммы, активизирующиеся при наступлении определенных событий, например, удаление записи из таблицы, модификация записей и т.д. Триггеры являются мощным средством обеспечения целостности данных.
Пользовательские типы данных – типы данных, создаваемые пользователем на основании базовых типов данных СУБД.
Системные таблицы – хранят всю информацию о схеме базы данных и содержащихся в ней объектах.
Вся информация базы данных может размещается в нескольких областях. Область представляет собой файл с расширением db, в которой хранится вся база данных или один из ее фрагментов. Каждая область характеризуется своим именем и файлом, соответствующим этой области. Первоначально база данных занимает только одну область с именем SYSTEM, которой соответствует базовый файл (root file). Затем по мере необходимости пространство внешней памяти базы данный может расширяться за счет добавления новых областей. Эти файлы областей могут быть размещены в любом каталоге на любом диске и любом узле локальной сети.
Физически каждый файл (область) состоит из страниц фиксированного объема. Размер страниц устанавливается при создании базы данных. В страницах размещаются объекты базы данных. В зависимости от размера объектов каждая страница может содержать несколько экземпляров объектов или фрагмент одного из объектов.
Наряду с файлами областями в состав базы данных входит файл для хранения журнала изменений БД – файл с расширением log. Наличие журнала изменений является основой манипулирование данными в рассматриваемой СУБД с использованием механизма транзакций. Такой подход обеспечивает высокую защиту баз данных от возникающих программных и аппаратных сбоев и отказов.
Характеристики аппаратных средств
Программа разрабатывалась на ПК со следующей конфигурацией:
МП Pentium II 233
RAM 32 Mb
Video ASUS V300 4Mb
HDD Seagate 3.2 Mb
Тестирование осуществлялось на вычислительных системах с МП Pentium 133 – Pentium 200 MMX с объемом памяти 16-32 Mb. При этом не наблюдалось значительного замедления работы приложения по сравнению с конфигурацией компьютера разработчиков.
Минимальные аппаратные требования для работы программы:
МП Pentuim 90
RAM 16 mb
Video 1 Mb.
Объем необходимого дискового пространства следует из таблицы:
Компонент программы | Размер (в Кb) |
Исполняемый модуль | 283 |
База даннных | 466 (начальный размер) |
Библиотеки Power Builder | 6,284 |
ODBC-драйвер Sybase SQL Anywhere | 2,154 |
Всего: | 9,187 |
Характеристики программных средств
Среда разработки приложений “клиент-сервер” Power Builder предлагает программисту средства объектно-ориентированного программирования для реализации поставленной перед ним задачи. Этот подход является в настоящее время наиболее актуальным вследствие своей гибкости и естественности концепции, его определяющей, т.к. он дает возможность представить задачу в виде совокупности объектов и связей между ними, т.е. фактически в виде модели реального мира.
Основными понятиями Power Builder являются следующие:
объект – некоторая сущность, характеризующаяся набором характеристик и методов их обработки;
сценарий – программный код обработки объектов.