Программирование >>  Руководство по созданию web приложений 

1 ... 40 41 42 [ 43 ] 44 45 46 ... 141


Установка соединения

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

Данный объект позволяет соединение с источником данных по-

средством интерфейса ODBC или напрямую. В первом случае Вам падо указать имя данных Data Source Name (DSN), a во втором - информацию об

источнике данных: имя драйвера, имя сервера, и т, д. В примерах мы

будем использовать подключение к источнику с применением DSN.

После работы с соединением его закрыть, вызвав

метод Close . . Connection.

Подготовка команды и параметров

После установки соединения должно подготовить объект Command,

записав в его свойства команды, для доступа к данным. Это могут

быть команды выполнения строк языка (например, строки

select * ffDin clitH isi-). команда вызова хранимой процедуры SQL Server I Id ее имени или имя таблицы.

При помощи объекта Parameter может передать вместе с коман-

дой параметры. Входные параметры позволяют передавать информацию в хранимые процедуры SQL Server, а выходные - принимать информацию ни храпи-мой процедуры.

Выполнение команды

Один из методов объекта Command с именем Execute предназначен для ипиции-выполпения команды. В от выполняемой команды он может возвращать результат в

набора записей Recordset или через выходные хранимой про-

цедуры (если команда запускает такую процедуру).

Обработка результатов выполнения команды

Результатом выполнения команды быть набор записей, представляемых

объектом Recordset.

в результате выполнения команды SQL select from clients* создается набор записей Recordset, представляющих собой массив строк таблицы clients. Приложение способно просмотреть все записи из набора, их в своей локальной памяти или использовать каким-либо другим способом.

В частности, Вы получаете право обновить набор записей, если

хотите обновить источник ланиы.ч.

После обработки набора записей его нужно методом Close, предус-

мотренным для этой цели в объекте Recordset.

Обработкаошибок

в процессе подготовки параметров команды и се выполнения иногда ют события, связанные с ошибками. Ваше приложение должно уметь их обрабатывать. Заметим, что одна команда может порождать несколько сообщений об ошибках, поэтому обработка должна выполняться в :



Connection Command

Recordset

Рис. 4-1. Объект Connection

Command отношение к unci, ft к конкретному источнику

открытому для объекта Connection. Таким образом. Вы объект Command

для использования с выбранным источником данных.

После успешного команды может быть набор

Recordset. i) тоже генерируется в контексте того сеанса связи с источником данных, который был открыт в рамках объекта С onnection.

Если при команды возникли ошибки, создается объект Errors,

представляющий собой I объектов Error. Все эти объекты име-

ют отношение кконкретному объекту С onnection и должны обрабатываться в его контексте.

Рассмотрим маленький щш.аи-]; - фрагмент серверного JScript,

на странице ASP:

connect =

roinect.CoPnect;cnTlieoiir = 15;

в первой строке мы определяем переменную connect, для

хранения объекта Connection.

Далее мы создаем объект Connection, вызывая метод CreateObject объекта Server (объект Server является встроенным объектом ASP).

Перед тем как установить соединение с источником данных, мы задаем два свойстваобъектаС onnection-тайм-аутсеансаС о nnectionTimeou tитaйм-ayт

Объекты ADO

А сейчас мы расскажем о и свойствах объектов, составляющих фунда-

мент ADO. Применение этих методов иллюстрируется в серверных сценариях ASP, составленных HaJScript.

Объект Connection

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

Объект Connection связан с объектами Errors, Command и Recordset, как это показано на рис. 4-1.



Как видите, объект Command создается аналогично объекту Connection. После создания объекта Command установить как минимум три

свойства этого объекта - А с * 1 и

= connect;

СначаламырасскажемосвойствеАс11уеСоппес11оп.

Вы уже знаете, что любой объект Command имеет отношение к конкретному соединению Connection. Чтобы указать, что команда предназначена для источ-данных, доступ к которому выполняется через соединение connect, необходимо записать ссылку на объект Connection в свойство Act iveC о nnect ion.

Свойство CommandType задается как константа и определяет тип выполня-eмoйкoмaнды.ПpиэтoмнaзнaчeниecвoйcтвaCommandTextпoлнocтьюoпpeдeля-ется типом команды, как лтч нокллти) в таблице 4-1.

команды . Первое из них определяет время ожида-

ния установления канала с источником данных (в секундах), а второе -

время ожидания выполнения команды. Если тайм-аут истек, устанавливается состояние ошибки.

Зачем задаются эти параметры?

Просто для того, чтобы сервер Web не ожидал бесконечно соединения или команды. Соединение будет разорвано также и в случае сильной загрузки SQE Server, когда он не успевает справиться с поступающими

запросами. Зная время выполнения Вы можете в своем прило-

жении соответственным образом настроить тайм-ауты.

Помимо свойств ionTimeout и Connection имеет

и другие свойства, параметры соединения. Однако пока мы ог-

раничимся только этих свойств.

Открытие канала связи с источником данных в нашем примере ся при помощи метода Ооеп, определенного в интерфейсе объекта Connection. Мы

этому методу три параметра, имя источника

идентификатор пользователя и пароль, необходимые для получения доступа.

Чтобы закрыть канал связи, используйте метод Close объекта Connection. Все неиспользованные каналы связи следует закрывать для экономии ресурсов сервера. В : сервер SQE Server может иметь ограниченное количество лицензий на соединения с клиентами. Если вовремя не закрывать неиспользуемые можно быстро лимит таких лицензий, в результате чего перестанет работать.

Объект Command

Как мы уже говорили, объект Command посылает команды в базу данных с целью проведения таких операций, как запуск хранимых или исполнение

строк программы

Прежде всего, создать объект Command, обратившись для этого к

методу CreateObject объекта Server:



1 ... 40 41 42 [ 43 ] 44 45 46 ... 141

© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика