怎么获得存储过程的返回值。

LonelyLeo 2009-03-25 03:07:44
现在有一存储过程
CREATE FUNCTION [dbo].[cqf_total_workingday]
(
@def_no INT,
@now_date datetime
)
RETURNS int
AS
BEGIN
DECLARE @diffdays int
DECLARE @begin_date datetime
DECLARE @end_date datetime
DECLARE @d int
............
set @diffdays = @diffdays - ISNULL(@d,0)
return @diffdays
end
怎么获得这个返回值呢
我看其他都是用output做的
但是这个没有,而且存储过程也不能改。
...全文
80 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
cjf_021 2009-03-25
  • 打赏
  • 举报
回复
不懂
tengyida 2009-03-25
  • 打赏
  • 举报
回复
CREATE FUNCTION [dbo].[cqf_total_workingday]

这不是函数吗?怎么会是存储过程?
LonelyLeo 2009-03-25
  • 打赏
  • 举报
回复
呃。
是个函数。
没注意去看。
LonelyLeo 2009-03-25
  • 打赏
  • 举报
回复
cmd.Parameters.Add("@def_no", SqlDbType.Int, 10).Value = "33554454";
cmd.Parameters.Add("@now_date", SqlDbType.DateTime, 20).Value = DateTime.Now;
conn.Open();
SqlDataReader dr;
dr = cmd.ExecuteReader();
while (dr.Read())
{
int diffdays = dr.GetInt32(0);
}
dr.Close();
我是这么写的,出不来
  • 打赏
  • 举报
回复
这是函数...
调用 select [dbo].[cqf_total_workingday](参数)
soaringbird 2009-03-25
  • 打赏
  • 举报
回复
调用时指定一个SqlParameter,其Direction属性设置为ReturnValue,调用完成后即可访问其值
浮生若梦丶 2009-03-25
  • 打赏
  • 举报
回复
zhangkunit 2009-03-25
  • 打赏
  • 举报
回复
这不是 存储过程吧 是个自定义标量值函数。其返回值类型为int。
如下语句:
select dbo.cqf_total_workingday(10,2009-3-25)
即可查询出结果值。

111,126

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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