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

1 ... 81 82 83 [ 84 ] 85 86 87 ... 141


IIFIESULT г г;

ULONG nColsCount;

DBCOLUMNINFO* pCollnfo = NULL;

: . = NULL;

hr = . . ...

Методу i через параметры передаются три указателя на перемен-

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

В переменную .на которую передается через первый

параметр, метод - - - количество столбцов, гя в на-

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

Через второй параметр методу GetColumnlnfo передается адрес в которую будет записан адрес массива структур DBCOLUMNINFO, описывающих столбцы набора.

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

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

Структура DBCOLUMNINFO определена так: t/petlef struct ..

LPOLESTR pwszName;

ITypslrro * ULONG

DBCOLUMNFLAGS ULONG

DBTYPE .

BYTE bPrecision;

BYTE bScale;

DBII) epiuinld;

} DBCOLUMNINFO;

Поля этой структуры описаны в 5-6.

Таблица 5-6. Поля структуры DBCOLUMNINFO

Поле Описание

pwszName Указате.ть на имя или NULL, если имя столбца определить не

удалось

pTypelnfo Зарезервировано

iOrdinal номер столбца. . с 1, причем стол-

бец закладки типа bookmark имеет нулевой помер

dwFlaga ; характерисиж столбца. Набор флагов определен в рамках

речисления DBCOLUMNFLAGS ulSaluenSize Максимальная длина значения в столбце wType Тна данных, в столбце

bPrecision Максимальная точность численных данных или длина строки, в кото-

рой представлеггы данные других



точки для данных типа

После получения информации о столбцах набора мы должны освободить ненужный в - . - . работе - на интерфейс IColuiinsInfo:

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

приложении. Особый интерес вызывает информация, в полях

- ; - - .; (характеристики столбца) и hTjpe (тип данных).

Поле dwFlags может содержать константы, объединенные логической опера-1Ь> (таблица 5-7). Таблица 5-7. Константы для заполнения -

KoHCiHHiH Описание

. . . . .: .. Отсроченное чтение с кэшированием

... Столбец содержит закладку bookmark

. - . Столбец содержит (chapter \-лЫг;)

D8C0LUMNFLAGS iSFiXEDLENGTH Все данные В столбце имеют одну и ту же длину

Столбец содержит данные типа BLOB

: а Е Этот флажок в том случае, если столбец

может содержать значения NULL или если . . ис-точнгжа данных способен определить, может ли значение полей столбца быть равно NULL

Столбец сохраняемой строки

Стол содержит отметку о времени iUhicnnmp} или другое значение, используемое для .-,nT,-<:ai.:iii.uiii>i версий записей, которое и.ля обновлять при помохци операций прямой :..iiiirii

11<.,:.1 i-i.i.ifdia могут содержать значения NULL

Отложенный столбец. Данные такого столбца не извлекаются II.; источника данных до тех пор, пока потребитель данных не 1 1.ык.М1-;. их извлечь

Для данного столбца можно вызывать метод SetData

iii.i(4Miri;i :i IrawsetChHiije. предназначенного для изме-IIC4III записи. Если этот флажок не у (~1ы as п. 1141. записи данного столбца доступны только для чтения. Этот флажок не используется совместно с

>aLUIINFLACiS afi TyNKNCWK

Данные в <iai а=. laa.i и:а как iiaaaaa.a-i-aiM метода SetData интерфейса IrowsetChange, так и с применением других механизмов.

Этот флажок а а используется совместно с DBCOLUMNFLAGS WRITE

BLajOLUMHf lASS lSBOiilI!; I) В С О а и И И F L aaaS, Д S Я О И V Е

а: W.VBENUL

DBCOLUHNFLAGS MAYDEFER

DBCOLUMNFLAGa WRITE

DBCOI.uflBFa

Таблица 5-6. Поля структуры .: - (продолжение)

Поле Описание

bScale Количество цифр справа от

. . 1Ш1 DBIYPENUMERIC

Идентификатор



Что же касается типа данных, указанного в поле : . то в таблице 5-8 мы перечислили некоторые . значения для провайдера сервера Microsoft

SQL Server. Таблица 5-8. Типы данных

Тип данных OLE

dbtype str

dbtype, bytes

DBTYFE IIIJHERIC

Тип в Microsoft SQL Server

char

varchar

text

binary

aar Ыааау

timestamp

image

numeric

decimal

Описание

Строка символов ANSI, закрытая двоичным нулем

Численное значение, имеющее

<t.aH;cii])ai;aiaiyKi точность и масштаб. Описываетсяструктурой fji iU4EiIC,

tytmilet struct tjfjDB.IfaHEfllC {

BYTE precision; BYTE scale; byte byte

DBTYPE DATE

tinyint

smallint

real

float

Здесь precision . ко.личество

десятичных цифр, scale - количество цифр от десятичной

sign - знак(1 дли чи-

сел и О для отрицательных), аа! - число, занимающее в памяти 16 байт

Целое без знака, занимающее в памяти 1 байт

Двухбайтовое целое со знаком Целое со ,.; .., . в i байта

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

Аналогично по двойной

точа ости

Значеггие типа double. Целая часть этого содержит ко.личество дней, с 30 декабря 1899 года, а дробная - прошедшую часть текущего дня



1 ... 81 82 83 [ 84 ] 85 86 87 ... 141

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