Перенос данных в программные переменные
Приложения, которые обращаются к базам данных 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, описаны в документации по поставщику или драйверу.
См. также
Основные понятия
Маркеры параметров (ядро СУБД)
Использование переменных и параметров (ядро СУБД)