Уроки Iczelion'а

       

Возвращаемые величины


  На этой консультации, вы узнаете как извлекать записи возвращенные инструкциями SQL.

  Мы назовём группу записей возвращаемых инструкцией - набором результатов. Общие шаги для получения установленного результата следующие:

  • Определить доступен ли набор результатов.
  • Связать множество столбцов результатов с переменными
  • Выборка столбца
  •   Когда вы проанализируете набор результатов, вам нужно уничтожить его вызвав SQLCloseCursor.

    ОПРЕДЕЛЕНИЕ ДОСТУПНОСТИ НАБОРА ТЕЗУЛЬТАТОВ

      Иногда, как вы уже знаете, в результате выполнения инструкции SQL создаётся набор результатов. Если инструкция SQL - не возвращает набора результатов, то, естественно, что никакого доступна к ним быть не может. Тем не менее, иногда вы даже и не знаете, что возвращает инструкция SQL, Это возникает тогда, когда вы позволяете пользователю вводить заказные инструкции SQL. В этом случае вы должны проверить был ли создан набор результатом вызовом SQLNumResultCols. Эта функция возвращает количество столбцов (полей) в наборе результатов (если они существуют) и имеет следующий синтаксис: SQLNumResultCols proto StatementHandle:DWORD, pNumCols:DWORD

  • StatementHandle. Идентификатор инструкции.
  • pNumCols. Указатель на переменную типа dword которая возвращает число столбцов в наборе результатов.
  •   Если величина в переменной указанной pNumCols это 0, значит результат не устанавливался.

    СВЯЗЫВАНИЕ СТОЛБЦОВ

      В некотором отношении, понятие - идентичное той же связи переменной с параметром инструкции SQL. Вы ассоциируете(связываете) переменную со специфическим столбцом в наборе результатов. В этом случае используется функция SQLBindCol, которая имеет следующий синтаксис:

    SQLBindCol proto StatementHandle:DWORD, ColumnNumber:DWORD, TargetValuePtr:DWORD, BufferLength:DWORD, pStrLenOrIndPtr:DWORD

  • StatementHandle. Идентификатор инструкции
  • ColumnNumber. Номер столбца в наборе результатов, с которым будет произведено связывание. Номер столбца начинается с 1. Столбец 0 - столбец закладки.
  • TargetType. Константа, которая указывает тип переменной (буфера) указанного TargetValuePtr.
  • TargetValuePtr. Указатель на переменную или буфер, который будет связан со столбцом. Когда вы вызываете SQLFetch, чтобы извлечь столбец из набора результатов, переменная или буфер будут заполняться величиной из связанного столбца.
  • BufferLength. Размер буфера указанного TargetValuePtr.


  • Содержание раздела