日期:2014-05-19  浏览次数:21002 次

怎样把查询出来的结果赋值给一个变量啊??
我用的是存储过程
create   procedure   using_card
@CardId   varchar(50)
as
select   Amount
from   Visacard
where   CardID   =   @CardId
go

查出一个值后,我想把它赋值给一个变量以进行下一步的操作,应该怎样赋值给变量啊

------解决方案--------------------
create procedure using_card
@CardId varchar(50)
as
declare @returnValue INT
select @returnValue = Amount
from Visacard
where CardID = @CardId
RETURN @returnValue
或定义输出参数
------解决方案--------------------
有一点提醒一下,存储过程只能返回int 类型
------解决方案--------------------
使用ExecuteScalar 方法来查询就可以了,比如:

SqlCeCommand cmd = new SqlCeCommand( "using_card ", conn);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Connection.Open();
object value = cmd.ExecuteScalar();
conn.Close();


------解决方案--------------------
ExecuteScalar 方法

使用 ExecuteScalar 方法从数据源中检索单个值(例如一个聚合值)。