Типы данных ADO (adParamInput против adParamOutput) - PullRequest
1 голос
/ 13 октября 2011

Может кто-нибудь сказать, в чем разница между adParamInput и adParamOutput?

Я использую параметры в классической среде ASP / MySQL.

Большое спасибо

Ответы [ 2 ]

3 голосов
/ 13 октября 2011

AdParamInput для значения, отправляемого в БД, AdParamOutput для значения, возвращаемого ИЗ БД (выходной параметр из хранимой процедуры, например) в отличие от возвращаемого набора записей.

РЕДАКТИРОВАТЬ: развернуть ответ.

Входные и выходные параметры используются для передачи типизированных скалярных значений между клиентом и сервером.Таким образом, вы можете использовать входной параметр, чтобы дать первичный ключ искомой записи, и выходной параметр, чтобы вернуть отдельное, но связанное значение.Например, если у вас была таблица сотрудников, и вы хотели выбрать всех сотрудников по отделам и их совокупную зарплату в прошлом году.Возврат комбинированной зарплаты в каждом ряду набора записей был бы возможен, но неудобен для клиента.Вместо этого вы возвращаете набор записей и устанавливаете значение выходного параметра.Клиент извлекает скаляр, а затем обрабатывает набор записей (представляет список имен и ТЕКУЩИХ окладов, а также сумму, выплаченную этим людям в прошлом году).В других случаях вы можете просто вернуть выходной параметр без набора записей.

1 голос
/ 13 октября 2011

Вывод из запроса SELECT (aks «resultset») должен быть захвачен в ADO с использованием объекта Record или Recordset.

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

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

Чтобы вернуть количество строк, на которые влияет оператор обновления (например, INSERT), используйте свойство RecordsAffected в методе Execute объекта Connection / Command.

...