Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Обработка результатов
Получение сведений результирующих наборов.
Если используются привязанные столбцы, для каждого столбца, к которому нужно привязать, вызовите SQLBindCol , чтобы привязать буфер программы к столбцу.
Для каждой строки в результирующем наборе:
Вызовите SQLFetch, чтобы получить следующую строку.
Если используются привязанные столбцы, используйте данные, доступные в буферах привязанных столбцов.
Если используются несвязанные столбцы, вызовите SQLGetData один или несколько раз, чтобы получить данные для несвязанных столбцов после последнего привязанного столбца.
SQLGetDataВызовы должны быть в порядке увеличения числа столбцов.Вызовите
SQLGetDataнесколько раз, чтобы получить данные из текста или столбца изображения.
Когда SQLFetch сообщает конец результирующий набор, возвращая SQL_NO_DATA, вызовите SQLMoreResults , чтобы определить, доступен ли другой результирующий набор.
Если он возвращает SQL_SUCCESS, доступен другой результирующий набор.
Если он возвращает SQL_NO_DATA, больше результирующих наборов нет.
Если он возвращает SQL_SUCCESS_WITH_INFO или SQL_ERROR, вызовите SQLGetDiagRec , чтобы определить, доступны ли выходные данные из инструкции PRINT или RAISERROR.
Если параметры привязанной инструкции используются для выходных параметров или возвращаемого значения хранимой процедуры, используйте данные, доступные в буферах привязанных параметров. Кроме того, при использовании привязанных параметров каждый вызов SQLExecute или SQLExecDirect выполнит инструкцию SQL S , где S — это количество элементов в массиве связанных параметров. Это означает, что для обработки будут наборы результатов S , где каждый набор результатов состоит из всех результирующих наборов, выходных параметров и кодов возврата, обычно возвращаемых одним выполнением инструкции SQL.
Замечание
Если результирующий набор содержит вычислительные строки, каждая вычисляемая строка становится доступной в виде отдельного результирующий набор. Эти вычислительные результирующие наборы перемежаются в обычных строках и разбивают обычные строки на несколько результирующих наборов.
При необходимости вызовите SQLFreeStmt с SQL_UNBIND, чтобы освободить все связанные буферы столбцов.
Если доступен другой результирующий набор, перейдите к шагу 1.
Замечание
Чтобы отменить обработку результирующий набор перед возвратом SQLFetch SQL_NO_DATA, вызовите SQLCloseCursor.