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

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


Таблица.! i Константы типов команд

Константа Назначение свойства

Текстовое определение команды Имя таблицы

Имя хранимой - SQL Server

. Неизвестный тип команды (установлен по умолчанию). Если тип

команды явно не -- ADO обращается к провайдеру с запро-

сом на определение типа команды. Выполнение этого . свя-

занное с анализом свойства .:i .:. отнимает время. Поэтому для увеличения рекомендуется указывать тин

команды ; . , образом

Чтобы выполнить такую строку программы SQE, как select from следует записать в свойство константу aclCnd; - . а в -

CommandText - строку программы SQE, например: = adCmdText;

= select * from clients ;

Ранееприведенпримериспользованияконстантыас1Стс18Гогес1Ргосдля ка хранимой процедуры.

В - приложениях мы будем все обращения к базе данных

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

. расположенных на наших страницах ASP, Вы не найдете ни одной строки SQE. Однако в разделе, вызову методов ADO в приложе-

ниях С++, показан пример программы, которая непосредственно запускает строку SQE, выполняющую выборку из таблицы.

А теперь небольшое отступление от темы: мы объясним, почему отказались от кодирования программ SQE в серверных сценариях (хотя

это вполне допустимо).

Елавная причина этого - стремление отделить данные от программ.

Сложные проекты обычно создаются группой разработчиков. При этом кто-то отвечает за дизайн страниц Web, кто-то разрабатывает сценарии ASP, а кто-то ведет базу данных. Отделение даиньпч от программ позволяет разработчику базы данных не вникать в программирование серверных сценариев а создателю страниц ASP, в свою очередь, не владеть в совершенстве языком SQE. Создавая интерфейс между приложением и базой данных на уровне хранимых процедур, мы разделяем задачи программирования сценариев и разработки базы данных, упрощая процесс разработки и сопровождения.

Объект Parameters

с командой можно передать один или несколько параметров. Параметры передаются в виде набора Parameters, содержащего объекты Parameter (рис. 4-2).

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

- - -. .reatePa . ,.3ter( User , adVarChar, - i . 50, admin )):



В первой строке мы . . к методу CreateParameter, определенному в

объекте cmd класса Command (напомним, параметры имеют к командам).

Command

Parameters

Parameter

Рис. 4-2. Набор Parameters

Через первый параметр метода CreateParameter передастся имя параметра команды cmd. В нашем случае это User - имя пользователя.

Второй параметр метода CreateParameter определяет тип параметра команды cmd (строка, число, время, деньги и т. д.) и задается в виде константы. Мы передаем в хранимую процедуру имя пользователя типа . поэтому тип

параметра указан как adVarCliar. Другие типы параметров приведены в таблице 4-2.

Таблица4-2. Константыдляуказания параметра команды

Константа Тип данных

Эту константу можно складывать с другими помощи операции ИЛИ для указания, что параметр массив указанных типов данных

це.тое длиной 8 бит adBinary Бинарное значение (байт)

adBoolean

Эта константа с другими, ес.ти

указатель

Строка Unicode, двоичным (тип BSTR)

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

вое знаковое целое. Хранит значение с четырьмя цифрами от десятичной точки

adDate Хранится в . double. Целая часть представляет со-

бой количество дней, прошедшее с 30 декабря 1899 а дроб-

ная - дробную часть текущего дня

Parameters.

adVarChar, 50,

var . = .

Rights , adVarChar, 50, }:



Константа

4-2. Константы для указания типов параметра команды (продолжение) Тш данных

adDecimal

][:\т.\ п ППММДД, где:

ГГГГ - год; ММ - месяц; ДД - день

Время в f .11

ЧЧ - часы; ММ - минуты; СС - секунды

Отметка о времени (date-time stamp) в формате

дробная часть

с фиксированной точкой

двойной точности с плавающей точкой

adVariant

Код ошибки (32-разрядный)

Глобальный идентификатор (GUID)

Указатель на интерфейс IDispatch объекта OLE

знаковое целое Указатель на интерфейс объекта OLE

Тш long (только для объекта

Строка переменной длины (только для объекта Parameter)

Строка состоящая из многобайтовых симво-

лов (только для объекта Parameter)

Численное значение с точностью

с одинарной точностью

знаковое целое

целое

8-байтовое целое

4-байтовое

2-байтовое целое

Однобайтовое целое

определенная пользователем Бинарное значение (только для объекта Parameter) Строка символов (только объекта ParaiieterS Тип автоматизации

Эта константа складывается с другими, если данные структуру DBVRCTOR. в OLE DB, которая содер-

жит счетчик и указатель на другого типа

Строка Unicode, закрытая двоичным нулем (только для объекта Parameter)

Строка Unicode, закрытая нулем



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

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