请问,理解OUTPUT参数

d1223vg 2012-09-01 05:15:33
OUTPUT参数是传出值,可是下面的参数,并非OUTPUT参数,不也能传出值吗?OUTPUT的作用何处体现呢?

DECLARE @年龄 INT;
SELECT @年龄 = 年龄 FROM 客户表 WHERE 姓名 = '熊俊';
PRINT @年龄;
...全文
149 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
以学习为目的 2012-09-01
  • 打赏
  • 举报
回复
如果在过程定义中为参数指定 OUTPUT 关键字,则存储过程在退出时可将该参数的当前值返回至调用程序。若要用变量保存参数值以便在调用程序中使用,则调用程序必须在执行存储过程时使用 OUTPUT 关键字。
output的作用体现在当有另外的存储过程或者调用程序的变量需要调用参数当前值的时候就需要用output

看下这个 细化解析:如何使用OUTPUT参数返回数据
SQL77 2012-09-01
  • 打赏
  • 举报
回复
是过程和函数里面需要返回值给外面用。有OUTPUT。F1联机帮助。
你那个叫查询赋值。不是OUTPUT。
人生无悔 2012-09-01
  • 打赏
  • 举报
回复
帅哥,不能这样理解的,output用在存储过程中,作为输出参数时,主要是将当前值传回给应用程序
如你写了个分页程序,则你可能先出一些符合条件的记录,也需要传个总的计录数给前台程序
此时的行数就适合用output参数,而列表就是select * from ...


如果是非out参数,也可以输出值的,只是用处不一样而已,如

create proc p_t(
@年龄 int
)
as
select @年龄
go
DECLARE @年龄 INT;
SELECT @年龄 = 年龄 FROM 客户表 WHERE 姓名 = '熊俊';
exec p_t @年龄

34,873

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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