存储过程为什么老是不成功??

jery_lee 2002-05-19 02:42:00
存储过程为:

CREATE PROCEDURE makestatis
@填报单位 varchar(50),
@统计范围 varchar(20),
@填报日期 datetime
AS
if @统计范围='本级别' begin
select ic1.项目名称,ic1.批准单位,ic1.批准文号,ic1.批准建设面积,ic1.批准总投资,ic1.设计建筑面积,ic1.工程预算,ic1.开工年月,
本年计划投资=(select sum(计划投资) from item_card_jhtz icj1 where icj1.项目卡片id=ic1.id and year(icj1.投资日期)=year(@填报日期) and month(icj1.投资日期) between 1 and month(@填报日期)),
本期投资=(select sum(实际投资) from item_card_jhtz icj1 where icj1.项目卡片id=ic1.id and year(icj1.投资日期)=year(@填报日期) and month(icj1.投资日期) between 1 and month(@填报日期)),
累计投资=(select sum(实际投资) from item_card_jhtz icj1 where icj1.项目卡片id=ic1.id and icj1.投资日期<=@填报日期),
形象进度=(select max(形象进度百分比) from item_card_xxjd icx1 where icx1.项目卡片id=ic1.id and icx1.时间<=@填报日期),
ic1.计划竣工日期,ic1.单方造价,ic1.征地面积,ic1.征地费用
from item_card ic1
end

在查询分析器里面执行成功,调用则不成功??
<!--#include virtual="/inc/Link_Db.asp"-->
<!--#include virtual="/inc/adovbs.inc"-->
<%
Set CmdSP = Server.CreateObject("ADODB.Command")
CmdSP.ActiveConnection=Conn
CmdSP.CommandText = "makestatis"
CmdSP.CommandType = 4
CmdSP.Parameters.Append CmdSP.CreateParameter("@填报单位", adVarChar, adParamInput, 50, "M")
CmdSP.Parameters.Append CmdSP.CreateParameter("@统计范围", adVarChar, adParamInput, 20, "本单位")
CmdSP.Parameters.Append CmdSP.CreateParameter("@填报日期", adDbDate, adParamInput, , "2002-7-1")
'运行存储过程,并得到返回记录集
Set adoRS = CmdSP.Execute
出错!!Microsoft OLE DB Provider for ODBC Drivers (0x80040E21)

%>
...全文
88 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
jery_lee 2002-05-20
  • 打赏
  • 举报
回复
Sql 里面没有问题,但是ASP里面写的应该也没有问题的。
许留心 2002-05-19
  • 打赏
  • 举报
回复
存储过程名,参数用中文完全没问题。

你的存储过程不成功,最好在SQL里先测试,如果成功,你再看看是不是ASP里写得不对。
coolbily 2002-05-19
  • 打赏
  • 举报
回复
我也不知道为什么,不过变量名最好别用中文的

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧