ADO数据类型(adParamInput与adParamOutput)

时间:2011-10-13 02:41:56

标签: mysql sql database ado sqldatatypes

有人可以告诉我adParamInput和adParamOutput之间的区别是什么?

我在Classic ASP / MySQL环境中使用参数。

非常感谢

2 个答案:

答案 0 :(得分:3)

AdParamInput用于发送到db的值,AdParamOutput用于从db返回的值(例如,来自存储过程的输出参数),与返回的记录集不同。

编辑:扩大答案。

In和out参数用于在客户端和服务器之间来回传递类型化的标量值。因此,您可以使用输入参数来提供您要查找的记录的主键,并使用输出参数来返回单独但相关的值。例如,如果您有一个员工表,并且您希望按部门选择所有员工,并且他们去年的合并薪水。返回记录集的每一行中的合并工资是可能的,但对客户来说不方便。而是返回记录集并设置输出参数的值。客户端提取标量,然后处理记录集(显示名称和CURRENT工资列表,以及这些人去年支付的金额)。在其他情况下,您可能只返回输出参数,而没有记录集。

答案 1 :(得分:1)

必须使用Record或Recordset对象在ADO中捕获SELECT查询(a.k.s.“结果集”)的输出。

类型AdParamOutput的参数用于从存储过程返回标量值。

类型AdParamInput的参数用于将值传递给存储的proc或预处理语句,通常(但不一定是)标量。

要返回受更新语句影响的行数(例如INSERT),请使用Connection / Command对象的RecordsAffected方法上的Execute属性。