Перенос данных в программные переменные
Приложения, которые обращаются к базам данных SQL Server через функции API для работы с базами данных, должны перемещать данные между переменными приложений и объектами, перечисленными ниже.
Столбцы результирующего набора
Приложения должны перемещать данные в переменные приложения из столбцов выбранной строки результирующего набора.
Коды возврата
Приложения должны перемещать данные в переменную приложения из кода возврата хранимой процедуры.
Параметры
Приложения должны перемещать данные между параметрами хранимой процедуры и переменными приложения. Параметры могут быть входными и выходными. Поэтому данные могут перемещаться из переменной в параметр или из параметра в переменную.
Маркеры параметров
Маркеры параметров ODBC и OLE DB используются в инструкциях SQL либо вместо входных выражений (например в условиях поиска предложения WHERE), либо вместо параметров и кодов возврата хранимой процедуры. Приложения должны перемещать данные из переменных приложения и выражения, замещенного маркером параметра. Дополнительные сведения см. в разделе Маркеры параметров (компонент Database Engine).
Привязка
Многие функции 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, описаны в документации по поставщику или драйверу.
См. также