一个简单的SQL2000的问题

sunnyes2008 2010-09-25 07:46:05
我建了一张userdb表,有name 和passwd 这两个字段。
创建了一个存储过程

--create procedure QueryTeach
--(
-- @N char(10) OUTPUT,

-- @P char(10) OUTPUT
--)
-- AS

--select @N=name,@P=passwd

--from userdb

--where name=@N

在执行时怎样给变量赋值? 麻烦大虾指点下。
...全文
106 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhengkaimiao 2010-09-27
  • 打赏
  • 举报
回复
up!!!
SQLCenter 2010-09-27
  • 打赏
  • 举报
回复
送分帖,LZ你原来的存储过程一点问题都没有。

output 参数也可以设置初始值当成普通参数传入,相当于 ByRef。
fengyun142415 2010-09-27
  • 打赏
  • 举报
回复

set @name=...
fengyun142415 2010-09-27
  • 打赏
  • 举报
回复
set name=...
abuying 2010-09-27
  • 打赏
  • 举报
回复
你的存储过程有问题啊。
两个都是output变量,没有传入参数。
其实结果可以通过select来完成的。

create procedure QueryTeach 
(
@name char(10), --存储过程接收参数的变量
)
AS
begin
declare @N char(10)
declare @P char(10)
select @N=name,@P=passwd
from userdb
where name=@name --在这里使用
end
go

--调用
declare @name char(10)

set @name='111'
exec QueryTeach @name --result显示出来
AwillAway 2010-09-25
  • 打赏
  • 举报
回复
学习。。。。。。。。。。。。。。。
喜-喜 2010-09-25
  • 打赏
  • 举报
回复
create procedure QueryTeach
(
@name char(10), --存储过程接收参数的变量
@N char(10) OUTPUT,
@P char(10) OUTPUT
)
AS
begin
select @N=name,@P=passwd
from userdb
where name=@name --在这里使用
end
go

--调用
declare @name char(10)
declare @N char(10)
declare @P char(10)
set @name='111'
exec QueryTeach @name,@N output ,@P output
select name=@N,passwd=@P
pengpeng409 2010-09-25
  • 打赏
  • 举报
回复
呵呵。。。学习。。
sunnyes2008 2010-09-25
  • 打赏
  • 举报
回复

--create procedure QueryTeach
--(
-- @N char(10) OUTPUT,

-- @P char(10) OUTPUT
--)
-- AS

--select @N=name,@P=passwd

--from userdb

--where name=@N



//创建存储过程


--sp_helptext QueryTeach

//查看存储过程



--DECLARE @N char(10)
--DECLARE @P char(10)

-- set @N='111' //给变量赋值 *******************************************

-- EXEC QueryTeach @N output ,@P output

-- SELECT name=@N ,passwd=@P

//执行存储过程

喜-喜 2010-09-25
  • 打赏
  • 举报
回复
create procedure QueryTeach
(
@name char(10), --存储过程接收参数的变量
@N char(10) OUTPUT,
@P char(10) OUTPUT
)
AS
begin
select @N=name,@P=passwd
from userdb
where name=@name --在这里使用
end
go

--调用
exec QueryTeach 'Jone'
「已注销」 2010-09-25
  • 打赏
  • 举报
回复
多个传出,建议用临时表

34,590

社区成员

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

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