asp调用存储过程问题?

来源:百度知道 编辑:UC知道 时间:2024/05/31 12:29:24
请详细解释一下以下代码,我看不懂.("@harvest_name",200,2,50)括号里面是什么意思???
----------------------
Set cmd.ActiveConnection=conn
cmd.CommandText="game_work_fish_get_set_complete"
cmd.CommandType=&H0004

cmd.Parameters.Append cmd.CreateParameter("@community_id",3)
cmd.Parameters.Append cmd.CreateParameter("@userid",3)
cmd.Parameters.Append cmd.CreateParameter("@tools_product_id",3)
cmd.Parameters.Append cmd.CreateParameter("@bait_product_id",3)
cmd.Parameters.Append cmd.CreateParameter("@game_work_level_id",3)
cmd.Parameters.Append cmd.CreateParameter("@begin_datetime",7)
cmd.Parameters.Append cmd.CreateParameter("@game_work_harvest_id",3,2)
cmd.Parameters.Append cmd.CreateParameter("@harvest_name",200,2,50)
cmd.Parameters.Append cmd.CreateParameter("@harvest_comment",200,2,1024)
cmd.Parameters.Append cmd.Creat

CreateParameter(Name,Type,Direction,Size,Value)
都是可选参数,
Name 参数名,不需要与存储过程的对应
Type 数据类型,200是字符串,3是整数,具体可以参考adovbs.inc
Direction 方向,1:输入 2:输出 或者 4:返回,默认输入
Size 数据长度
Value 参数值

-------
'设定Command对象使用的数据库连接
Set cmd.ActiveConnection=conn

'命令文本,这里是存储过程名
cmd.CommandText="game_work_fish_get_set_complete"

'命令类型,4是存储过程,1是文本
cmd.CommandType= 4

'创建并添加一个参数
cmd.Parameters.Append cmd.CreateParameter(...)

'给参数赋值
cmd("@community_id") = 值

cmd.execute ' 执行命令

'将输出参数的值赋给变量
cmd_level_name = cmd("@level_name")

首先你得了解command的子对象parameter的用法,它的语法如下:
command.CreateParameter(Name,Type,Direction,Size,Value),共五个参数,针对你的语句:cmd.Parameters.Append cmd.CreateParameter("@level_name",200,2,50)
那解释如下:
@level_name为参数名称,200为参数类型,2指是参数传入的方向(传入和传出),50指参数的大小,没有value参数