Бөлісу құралы:


Шаг 4а. Выборка результатов

Следующий шаг — получить результаты, как показано на следующем рисунке.

Shows fetching results in an ODBC application

Если инструкция, выполненная на шаге 3. Сборка и выполнение инструкции SQL, была инструкцией SELECT или функцией каталога, приложение сначала вызывает SQLNumResultCols , чтобы определить количество столбцов в результирующем наборе. Этот шаг не требуется, если приложение уже знает количество столбцов результирующего набора, например если инструкция SQL жестко закодирована в вертикальном или пользовательском приложении.

Затем приложение извлекает имя, тип данных, точность и масштаб каждого столбца результирующих наборов с помощью SQLDescribeCol. Опять же, это не обязательно для таких приложений, как вертикальные и пользовательские приложения, которые уже знают эту информацию. Приложение передает эти сведения в SQLBindCol, который привязывает переменную приложения к столбцу в результирующем наборе.

Теперь приложение вызывает SQLFetch , чтобы получить первую строку данных и поместить данные из этой строки в переменные, связанные с SQLBindCol. Если в строке есть длинные данные, он вызывает SQLGetData , чтобы получить эти данные. Приложение продолжает вызывать SQLFetch и SQLGetData для получения дополнительных данных. После завершения получения данных он вызывает SQLCloseCursor , чтобы закрыть курсор.

Полное описание получения результатов см. в разделе "Получение результатов" (базовый) и получение результатов (дополнительно).

Теперь приложение возвращается на шаг 3. Сборка и выполнение инструкции SQL для выполнения другой инструкции в той же транзакции; или переходит к шагу 5. Фиксация транзакции для фиксации или отката транзакции.