存储过程能不能返回一个值啊

如数据库有一条记录是userid(bigint)123username(varchar(50))oppselectusernamefromwhereuserid=123存...
数据库有一条记录是

userid(bigint) 123
username(varchar(50)) opp

select username from where userid=123

存储过程怎么写等返回username的值

可以返回吗?
展开
 我来答
问车网
推荐于2016-10-01 · 超过13用户采纳过TA的回答
知道答主
回答量:44
采纳率:0%
帮助的人:0
展开全部
存储过程有两种方式返回值:
第一:通过output 参数
第二:通过return来实现

而在你的存储过程已经声明了一个output参数,只要你在你的存储过程已经给这个值赋值了,它就能返回回去.

建议一般用output参数,因为它可以返回多个,而return只能是一个,return一般用来返回:影响的行数,错误编码等

简单例子:
DECLARE @tmpCount int
SET @tmpCount int = (SELECT COUNT(*) FROM 表名 WHERE 你要进行搜索的条件)

IF (@tmpCount = 0)
BEGIN
INSERT 操作
RETURN 1
END
ELSE
BEGIN
RETURN 0
END
qsc800528
2010-03-29 · TA获得超过2974个赞
知道大有可为答主
回答量:1383
采纳率:0%
帮助的人:1760万
展开全部
create proc proName
@userid bigint,
@username varchar(50) out
as
select @username=username from tableName where userid=123
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式