Использование параметров инструкции
Параметр — это переменная в инструкции SQL, позволяющая в приложении ODBC осуществлять следующее.
Эффективно передавать значения для столбцов таблицы.
Повышать степень взаимодействия с пользователем при конструировании критериев запроса.
Управлять типами данных text, ntext и image, а также специальными типами данных языка C в SQL Server.
Например, в таблице Parts есть столбцы с именами PartID, Description и Price. Для добавления компонента без параметров необходимо составить инструкцию SQL, например:
INSERT INTO Parts (PartID, Description, Price) VALUES (2100, 'Drive shaft', 50.00)
Эта инструкция вполне подходит для вставки одной строки с заранее известным набором значений, но если в приложении необходимо вставить несколько строк, она становится менее приемлемой. Поэтому в ODBC разрешается заменять в приложении любое значение данных в инструкции SQL маркером параметра. Он обозначается вопросительным знаком (?). В следующем примере маркерами параметров заменены три значения данных.
INSERT INTO Parts (PartID, Description, Price) VALUES (?, ?, ?)
Затем происходит привязка маркеров параметров к переменным приложения. Для вставки новой строки в приложении достаточно только задать значения параметров и выполнить инструкцию. После этого драйвер получает текущие значения переменных и передает их в источник данных. Если инструкция выполняется неоднократно, то в приложении можно дополнительно оптимизировать этот процесс с помощью подготовки инструкции.
Ссылка на каждый маркер параметра осуществляется по порядковому номеру; параметры нумеруются слева направо. Первый слева параметр в инструкции SQL имеет порядковый номер 1; следующий — 2 и т. д.