Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / ADO и значение NULL в столбце / 5 сообщений из 5, страница 1 из 1
18.07.2007, 03:22
    #34665727
ныш
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADO и значение NULL в столбце
Вывожу список столбцов в выборке:

for(int i=0;i<(rs->Fields->GetCount());i++)
{
str=rs->Fields->GetItem((long)i)->Value;
printf("item[%d]=%s\n",i,(LPCSTR)str);
}

Все работает до тех пор, пока значение элемента не NULL. Иначе вываливается в исключение.
Поскажите как отследить нулевое значение, что-то ни сообразить не могу, ни найти. :(
...
Рейтинг: 0 / 0
18.07.2007, 09:51
    #34666007
iiyama
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADO и значение NULL в столбце
тип str -> F1 = успех
...
Рейтинг: 0 / 0
18.07.2007, 14:34
    #34667284
ныш
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADO и значение NULL в столбце
Ммм.
_bstr_t str;
Нет у него таких методов. Или я о чем-то не том думаю? :-/
...
Рейтинг: 0 / 0
18.07.2007, 18:13
    #34668267
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADO и значение NULL в столбце
У объекта Field есть проперть Status. А у проперти Status может быть значение adFieldIsNull. Дальше сам сообразишь?
...
Рейтинг: 0 / 0
18.07.2007, 21:16
    #34668575
ныш
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADO и значение NULL в столбце
White Owl, спасибо. Правда Status'a я так и не нашла. У меня VС6, может там его и нет.

Решение такое:
if (rs->Fields->GetItem((long)i)->Value.vt != VT_NULL) ...
или можно еще так:
if (rs->Fields->GetItem((long)i)->ActualSize != 0) ... //когда NULL - размер нулевой, этот вариант нашла первым
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / ADO и значение NULL в столбце / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]