怎么我的存储过程没有返回值

[复制链接]
查看11 | 回复3 | 2005-10-30 17:05:33 | 显示全部楼层 |阅读模式
CREATE PROCEDURE dbo.sp_Orders_MoreThan100 AS
DECLARE @Orders int
SELECT @Orders = count(*)
FROM Orders
if @Orders>100
return 1
else
return 2
这个存储过程应该返回1的.
可结果没有任何值返回.
不知那错了.
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
建議你看看幫助, 你的存儲過程定義錯誤,
create proc dbo.sp_orders_morethan100 @flag tinyint output
as
if exists(select count(*) from orders having count(*)>100)
select @flag = 1
else
select @flag = 0
調用時,
declare @flag tinyint
exec dbo.sp_orders_morethan100 @flag output
print @flag
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
我用你的代码在SQL查询分析器中已经得到了结果.
但我在visual studio .net 中的服务器资源管理器中运行这个存储过程时出现了运行存储过程表框
提示说:
存储过程需要下列参数
类型方向 名称 值
int
入/出 @p (为下拉菜单

可选



也可自己输入值)
选default时,结果输出:运行dbo."sp_Orders_MoreThan100" ( @p =).

过程 'sp_Orders_MoreThan100' 需要参数 '@p',但未提供该参数。

没有行受影响。

(返回 0 行)

@p =

@RETURN_VALUE =

完成 dbo."sp_Orders_MoreThan100" 运行。
选null时.结果输出:运行dbo."sp_Orders_MoreThan100" ( @p =).
给它赋值1.结果输出:运行dbo."sp_Orders_MoreThan100" ( @p = 1 ).
不知在visual studio.net 中如何运行
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
[QUOTE]最初由 using 发布
[B]我用你的代码在SQL查询分析器中已经得到了结果.
但我在visual studio .net 中的服务器资源管理器中运行这个存储过程时出现了运行存储过程表框
提示说:
存储过程需要下列参数
抱歉, 没用过。NET, 无法帮助你
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行