Cтраница 2
Если вы хотите повысить надежность клиентского приложения, работающего с SQL-сервером, вы должны использовать транзакции. Можно сказать, что транзакция - это последовательность операций, которая должна рассматриваться как единое целое, то есть нечто, не разбиваемое на части. [16]
Hi рис. 29.6 показано окно клиентского приложения Simpk-Clienl. [17]
Процесс сбора сведений из исходных файлов клиентских приложений ( и помещения этих сведений в репозиторий) состоит из следующих этапов: сначала собираются сведения об используемых в приложениях таблицах, а затем запускается утилита Design Capture для чтения исходных файлов и создания новых определений в репозиторий. Это позволяет поддержать или переработать модули при подготовке к генерации с определениями новых таблиц или иной информацией из репозитория. Кроме того, можно получать сведения исключительно из проектов форм, отчетов и Visual Basic. Для других языков доступны аналогичные диалоги со специфичными для этих языков полями и свойствами. [18]
С помощью функций интерфейса IAD Object Repository клиентские приложения могут управлять таблицей доступа всего хранилища, а с помощью функций интерфейса IAD Object - таблицами доступа объектов и полей. [19]
Как можно предположить, далее на форму клиентского приложения следует Добавить компонент ClientDataSet. Компонент ClientDataSet следует подключить к компоненту DCOMConnectionl ( а следовательно, к одному из экспортируемых им провайдеров) при помощи свойства RemoteServer. Список доступных провайдеров отображается в свойстве ProviderName в виде ниспадающего списка. В рассматриваемом примере вы сможете выбрать только один провайдер - DataSetProviderl, - так как это единственный провайдер в созданном вами сервере. [20]
Указывает, что когда СОМ-объект потребуется нескольким клиентским приложениям, то будет существовать только один экземпляр серверного приложения Для обслуживания запросов он создаст необходимое число внутренних объектов. [21]
Все SQL-серверы выполняют оптимизацию запросов, передаваемых им клиентскими приложениями. Они анализируют команды SQL и пытаются выбрать наиболее эффективный способ их выполнения. Средство, выполняющее этотанализ и выбор, и называется оптимизатором запросов. [22]
Каждый сервер, предоставляющий Telnet-услути, обычно предлагает свое клиентское приложение. [23]
Запрос клиентского приложения поступает монитору транзакций, который, действуя от имени клиентского приложения, определяет получателя этого запроса. Для этого он обращается к динамической маршрутной таблице, по которой определяет систему, предоставляющую соответствующий сервис. Если нужный сервис предлагают несколько систем, то в зависимости от используемого алгоритма маршрутизации выбирается одна из них, после чего ей перенаправляется запрос клиентского приложения. Маршрутизация может быть произвольной, когда система выбирается случайным образом, циклической, когда запросы посылаются системам по очереди, либо определяться содержимым запроса, если, например, серверы БД обслуживают разные подмножества данных. [24]
Хранимой процедурой называется именованный набор предварительно откомпилированных команд SQL, который может вызываться из клиентского приложения или из другой хранимой процедуры. [25]
Подсистемы, построенные на базе исполнительной системы, формируют операционные среды, соответствующие требованиям конкретных клиентских приложений. Благодаря этому общие функции ОС единственный раз реализуются в исполнительной системе, не повторяясь в каждой из подсистем. Это упрощает разработку новых подсистем и облегчает их поддержку. [26]
Одноуровневые СУБД могут быть сконфигурированы для работы как с серверными, так и с клиентскими приложениями, использующими протокол ТСРЛР. В этом стиле решаются проблемы тиражирования отношений баз данных, балансировки нагрузки, создания контрольных точек, сохраняющих на дисках состояние базы и журнал регистрации транзакций. [27]
Подсистемы строятся на основе служб исполнительного центра, чтобы создать среды, удовлетворяющие специфическим запросам клиентских приложений. Таким образом, общие функции операционных систем реализуются один раз в службах исполнительного центра и не дублируются в каждой подсистеме. Это сокращает усилия, требуемые для разработки новых подсистем, и упрощает их обслуживание. [28]
Чтобы решить эти проблемы, можно переместить код, осуществляющий обработку данных, на отдельный компьютер, и спроектировать клиентские приложения таким образом, чтобы они взаимодействовали с этим компьютером. Таким образом, клиентские компьютеры взаимодействуют с базой данных не напрямую, а через сервер приложений. [29]
Важно отметить, что когда пользователь редактирует данные локально, при нарушении бизнес-правил ( которые определяются на стороне сервера в виде ограничений) клиентское приложение немедленно оповестит пользователя об этом. Кроме того, сервер передает клиенту значение по умолчанию для поля Salary в случае, если пользователь создает новую запись. На рис. 16.3 вы можете видеть одно из сообщений об ошибке, которое отображается клиентским приложением. Текст сообщения передается клиенту от сервера. [30]