Информация о наборе данных

Материал из K3-Macro
(перенаправлено с «AdbFldType»)
Макро | Унифицированная работа с базами данных | Подключение к базе данных | Получение набора данных | Информация о наборе данных | Навигация по набору данных | Получение данных из набора | Модификация данных | Транзакции | Вспомогательные функции | Заполнения массива набором записей

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


INT adbFldCount(INT <idRs>)

Функция adbFldCount возвращает количество полей в наборе записей с номером <idRs>.


INT adbRecCount(INT <idRs>)

Функция adbRecCount возвращает количество записей в наборе записей с номером <idRs>.


STRING adbFldName(INT <idRs>, INT <Num>)

Функция adbFldName возвращает имя поля по его номеру <Num> в наборе записей с номером <idRs>. Поля в наборе записей нумеруются, начиная с нуля.


INT adbFldNum(INT <idRs>, STRING <FldName>)

Функция adbFldNum возвращает номер поля по его имени <FldName> в наборе записей с номером <idRs>. Поля в наборе записей нумеруются, начиная с нуля.


STRING adbFldType(INT <idRs>, VARIANT <Fld>)

Функция adbFldType возвращает тип поля <Fld>, заданного либо строкой с именем поля, либо числом с порядковым номером поля в наборе записей с номером <idRs>. Для совместимости с предыдущими версиями K3 используются следующие типы данных:

N — целочисленное поле
F — числовое поле двойной точности с плавающей точкой (double)
C — строковое поле
L — логическое поле

Дополнительные типы данных:

R — Currency
D — Data/Time
B — BLOB поле

в K3 не используются


INT adbFldSize(INT <idRs>, VARIANT <Fld>)

Функция adbFldSize возвращает размер поля <Fld>, заданного либо строкой с именем поля, либо числом с порядковым номером поля в наборе записей с номером <idRs>.

Пример:

ConStr="Provider=Microsoft.Jet.OLEDB.4.0;";
ConStr=ConStr+"Data Source=d:\\nwind.mdb";
MyConn=adbCon(ConStr);
SQLStr="SELECT * FROM Customers WHERE CompanyName='Ernst Handel'";
MyRs=adbOpen(MyConn,SQLStr);
=adbfldcount(MyRs);
4
=adbreccount(MyRs);
10
=adbfldtype(MyRs,0);
“N”
=adbfldtype(MyRs,1);
“C”
=adbfldtype(MyRs,2);
“C”
=adbfldtype(MyRs,3);
“L”
=adbfldtype(MyRs,"Address");
=adbfldsize(MyRs,0);
5
=adbfldsize(MyRs,"Address");
50
MyRs=adbClose(MyRs);
MyConn=adbdiscon(MyConn);

Макро | Унифицированная работа с базами данных | Подключение к базе данных | Получение набора данных | Информация о наборе данных | Навигация по набору данных | Получение данных из набора | Модификация данных | Транзакции | Вспомогательные функции | Заполнения массива набором записей