Asp调用各种存储过程,包括带参数,无参数,输入输出参数,带返回值等。

1,调用没有参数的存储过程

<%

set conn=server.CreateObject(“adodb.connection”)

set cmd=server.CreateObject(“adodb.command”)

strconn=”dsn=pubs;uid=sa;pwd”

conn.Open strconn

set cmd.ActiveConnection=conn

cmd.CommandText=”{call nono}”

‘set rs=cmc.exe 或者cmd.execute

set rs=cmd.Execute()

%>

2,一个输入的参数的存储过程

<%

set conn=server.CreateObject(“adodb.connection”)

set cmd=server.CreateObject(“adodb.command”)

strconn=”dsn=pubs;uid=sa;pwd”

conn.Open strconn

set cmd.ActiveConnection=conn

cmd.CommandText=”{call oneinput(?)}”

cmd.Parameters.Append cmd.CreateParameter(“@aaa”,adInteger ,adParamInput )

cmd(“@aaa”)=100

cmd.Execute()

%>

3,一个输入参数和一个输出的参数

<%

set conn=server.CreateObject(“adodb.connection”)

set cmd=server.CreateObject(“adodb.command”)

strconn=”dsn=pubs;uid=sa;pwd”

conn.Open strconn

set cmd.ActiveConnection=conn

cmd.CommandText = “{call oneinout(?,?)}”

cmd.Parameters.Append cmd.CreateParameter(“@aaa”,adInteger,adParamInput)

cmd(“@aaa”)=10

cmd.Parameters.Append cmd.CreateParameter(“@bbb”,adInteger,adParamOutput)

cmd.Execute()

bbb=cmd(“@bbb”)

%>

4,一个输入参数,一个输出参数,和一个返回值

<%

set conn=server.CreateObject(“adodb.connection”)

set cmd=server.CreateObject(“adodb.command”)

strconn=”dsn=pubs;uid=sa;pwd”

conn.Open strconn

set cmd.ActiveConnection=conn

cmd.CommandText=”{?=call onereturn(?,?)}”

cmd.Parameters.Append cmd.CreateParameter(“@return_value”,adInteger,adParamReturnValue )

cmd.Parameters.Append cmd.CreateParameter(“@aaa”,adInteger,adParamInput )

cmd(“@aaa”)=10

cmd.Parameters.Append cmd.CreateParameter(“@bbb”,adInteger,adParamOutput)

cmd.Execute()

bbb=cmd(“@bbb”)

rrr=cmd(“@return_value”)


ado文档对使用指定属性创建新的 Parameter 对象。

语法

Set parameter = command.CreateParameter (Name, Type, Direction, Size, Value)

返回值

返回 Parameter 对象。

参数

Name   可选,字符串,代表 Parameter 对象名称。

Type   可选,长整型值,指定 Parameter 对象数据类型。关于有效设置请参见 Type 属性。

Direction   可选,长整型值,指定 Parameter 对象类型。关于有效设置请参见 Direction 属性。

Size   可选,长整型值,指定参数值最大长度(以字符或字节数为单位)。

Value   可选,变体型,指定 Parameter 对象的值。

说明

使用 CreateParameter 方法可用指定的名称、类型、方向、大小和值创建新的 Parameter 对象。在参数中传送的所有值都将写入相应的 Parameter 属性。

该方法无法自动将 Parameter 对象追加到 Command 对象的 Parameter 集合,这样就可以设置附加属性。如果将 Parameter 对象追加到集合,则 ADO 将使该附加属性的值生效。

如果在 Type 参数中指定可变长度的数据类型,那么在将它追加到 Parameters 集合之前必须传送 Size 参数或者设置 Parameter 对象的 Size 属性

================================================================================

参数值的类型的意义如下:

Type名称 整数值 功能

adDBTimeStamp 135 日期时间数据类型

adDecimal 14 十进制整数值

adDouble 5 双精度小数值

adError 10 系统错误信息

AdGUID 72 全域性唯一识别字(Globally unique identifier)

adDispath 9 COM/OLE自动对象(Automation Object)

adInteger 3 4字节有符号整数

adIUnknown 13 COM/OLE对象

adLongVarBinary 205 大型2字节值

adLongVarChar 201 大型字符串值

adLongVarWChar 203 大型未编码字符串

adNumeric 131 十进制整数值

adSingle 4 单精度浮点小数

adSmallInt 2 2字节有符号整数

adTinyInt 16 1字节有符号整数

adUnsignedBigInt 21 8字节无符号整数

adUnsignedInt 19 4字节无符号整数

adUnsignedSmallInt 18 2字节无符号整数

adUnsignedTinyInt 17 1字节无符号整数

adUserDefined 132 用户自定义数据类型

adVariant 12 OLE对象

adVarBinary 204 双字节字符变量值

adVarChar 200 字符变量值

advarchar 202 未编码字符串变量值

adWchar 130 未编码字符串

方向值的意义如下:

Direction名称 整数值 功能  

adParamInput 1 允许数据输入至该参数当中

adParamOutput 2 允许数据输出至该参数当中

adParamInputOutput 3 允许数据输入、输出至该参数当中

adparamReturnValue 4 允许从一子程序中返回数据至该参数当中