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


Использование инструкции (ODBC)

Применимо: SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure azure Synapse Analytics Analytics Platform System (PDW)

Использование инструкции

  1. Для выделения дескриптора инструкции вызовите функцию SQLAllocHandle с параметром HandleType, имеющим значение SQL_HANDLE_STMT.

  2. Также можно вызвать SQLSetStmtAttr для настройки параметров инструкции или SQLGetStmtAttr для получения атрибутов инструкции.

    Чтобы использовать серверные курсоры, необходимо установить атрибуты курсоров в значения, отличные от значений по умолчанию.

  3. Если инструкция будет выполняться несколько раз, то ее можно подготовить к выполнению с помощью функции SQLPrepare.

  4. Если инструкция имеет связанные маркеры параметров, можно привязать их к переменным программы с помощью функции SQLBindParameter. Для подготовленной инструкции можно вызвать функции SQLNumParams и SQLDescribeParam to find the number и characteristics of the parameters.

  5. Произведите прямое выполнение инструкции с помощью функции SQLExecDirect.

    - или -

    Если инструкция была подготовлена, выполните ее несколько раз с помощью функции SQLExecute.

    - или -

    Вызовите функцию каталога, возвращающую результаты.

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

    Произведите выборку из результирующего набора инструкции одной строки.

    - или -

    Произведите выборку из результирующего набора нескольких строк с помощью блочного курсора.

    - или -

    Вызовите функцию SQLRowCount , чтобы определить число строк, затронутых инструкцией INSERT, UPDATE или DELETE.

    Если инструкция SQL имеет несколько результирующих наборов, то после получения каждого результирующего набора вызовите функцию SQLMoreResults , чтобы просмотреть, есть ли дополнительные результирующие наборы для обработки.

  7. После обработки результатов, чтобы сделать для дескриптора инструкции доступной возможность выполнения новой инструкции, могут потребоваться следующие действия.

    • Если функция SQLMoreResults не вызывалась до возвращения значения SQL_NO_DATA, вызовите функцию SQLCloseCursor для закрытия курсора.

    • Если маркеры параметров привязаны к переменным программы, то для их освобождения вызовите функцию SQLFreeStmt с параметром Option , установленным в значение SQL_RESET_PARAMS.

    • Если столбцы результирующего набора привязаны к переменным программы, для их освобождения вызовите функцию SQLFreeStmt с параметром Option , установленным в значение SQL_UNBIND.

    • Для повторного использования дескриптора инструкции перейдите к шагу 2.

  8. Для освобождения дескриптора инструкции вызовите функцию SQLFreeHandle с параметром HandleType, установленным в значение SQL_HANDLE_STMT.

См. также

Инструкции по выполнению запросов (ODBC)