【问题标题】:Stored Proc, how to select into multiple variables?存储过程,如何选择成多个变量?
【发布时间】:2011-03-01 16:06:30
【问题描述】:

我的存储过程的行为不符合我的预期。我期望从 1 个 select 语句中填充多个变量。

像这样:

Declare @Phone nvarchar(30); 
Declare @Fax nvarchar(30); 

select @Phone = phone , @Fax = fax from customer where customerID = 1;

但是,在此选择之后,变量始终为空白。我确信结果集是标量的,并且数据确实存在。

明显的错误在哪里,谢谢!

【问题讨论】:

  • 您确定select * from customer where customerID = 1 会返回任何值吗?
  • 你如何检查变量的值?

标签: sql stored-procedures


【解决方案1】:

我认为这应该可行(我相信有人会纠正我的!)。

您绝对确定数据存在?

如果你添加一个

print @Phone
print @Fax

紧接着,它们都是空白的?

【讨论】:

  • 我会再次检查,以确保 200% 确定。
  • 你说得对,数据才是问题所在。显然,我在上面发布的示例是对真实事物的简化,但我对 where 子句有疑问。再次感谢!
猜你喜欢
  • 1970-01-01
  • 2011-01-27
  • 1970-01-01
  • 2013-07-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-03-02
相关资源
最近更新 更多