NULL в OLEDB
От: podaa Россия  
Дата: 24.11.05 11:37
Оценка:
Доброго времени суток!!!
всплыла потребность передать в хранимую процедуру (т.е. параметр DBPARAMIO_INPUT) значение NULL.
следуя указаниям букваря использовал макрос COLUMN_ENTRY_STATUS(2, m_param1,m_st_param1)
перед открытием честно присвоил m_st_param1 = DBSTATUS_S_ISNULL; (из MSDN — The value sent to the provider is NULL. The provider ignores the contents of the value and length parts of the consumer's buffer.)
процедурка тестовая — она просто возвращает 0 если переданный параметр NULL, иначе 1.
так вот — она все время возвращвет 1, т.е. NULL в неё не приходит... как быть?
просто в реальной базе это _очень_ важно — это признак создать новую запись или редактировать старую...
да еще параметр там хитрый — INPUT_OUTPUT, сможет ли OLEDB провайдер для oracle это переварить? или искать обходные пути...
P.S. в обратную сторону (т.е. при получении данных) работает без проблем — проверяю статус на DBSTATUS_S_ISNULL и если таковой имеется то там именно NULL...

Спасибо за внимание.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.