Перенос данных в программные переменные

Приложения, которые обращаются к базам данных SQL Server 2005 через API-функции для работы с базами данных, должны перемещать данные между переменными приложений и объектами, перечисленными ниже.

  • Столбцы результирующего набора
    Приложения должны перемещать данные в переменные приложения из столбцов выбранной строки результирующего набора.
  • Коды возврата
    Приложения должны перемещать данные в переменную приложения из кода возврата хранимой процедуры.
  • Параметры
    Приложения должны перемещать данные между параметрами хранимой процедуры и переменными приложения. Параметры могут быть входными и выходными. Поэтому данные могут перемещаться из переменной в параметр или из параметра в переменную.
  • Маркеры параметров
    Маркеры параметров ODBC и OLE DB используются в инструкциях SQL либо вместо входных выражений (например, в условиях поиска предложения WHERE), либо вместо параметров и кодов возврата хранимой процедуры. Приложения должны перемещать данные из переменных приложения и выражения, замещенного маркером параметра. Дополнительные сведения см. в разделе Маркеры параметров (ядро СУБД).

Привязка

Многие API-функции для работы с базами данных используют концепцию привязки с целью указания правил перемещения данных между переменной приложения и объектом SQL Server. С помощью API-функций для баз данных можно:

  • Определить тип данных, размер, точность и масштаб столбца результирующего набора, код возврата, параметр или маркер параметра. После получения этих сведений приложение может выделить переменную или массив переменных с совместимыми атрибутами.
  • Связать столбец результирующего набора, код возврата, параметр или маркер параметра с конкретной переменной или массивом переменных. Данные привязки обычно включают в себя следующее:
    • Адрес и атрибуты (тип данных, размер, точность и масштаб) переменной.
    • Имя и атрибуты объекта базы данных.

Перемещение данных обычно требуется, когда происходит одно из действий:

  • Выполняется инструкция или пакет на языке Transact-SQL.
    Поставщик OLE DB или драйвер ODBC запрашивает данные, привязанные к любым входным параметрам или маркерам параметров, и включает их в пакет, отправляемый на экземпляр SQL Server.
  • Производится выборка строки результирующего набора.
    Поставщик OLE DB или драйвер ODBC перемещает данные каждого столбца в связанные переменные.
  • Выбраны или отменены все результирующие наборы из хранимой процедуры.
    Поставщик OLE DB или драйвер ODBC перемещает данные каждого выходного параметра или коды возврата в связанные переменные.

Связанные переменные приложений не обязательно должны иметь тот же тип данных, что объект SQL Server, к которому они привязаны. Если типы данных отличаются, поставщик OLE DB или драйвер ODBC конвертирует данные при перемещении. Наборы преобразований, поддерживаемые каждым из поставщиков OLE DB или драйверов ODBC, описаны в документации по поставщику или драйверу.

См. также

Основные понятия

Маркеры параметров (ядро СУБД)
Использование переменных и параметров (ядро СУБД)

Справка и поддержка

Получение помощи по SQL Server 2005