我认为这很简单,但是我对SP的使用经验非常有限。将SET变量传递给存储过程
我有一个相当长的查询,我现在想要传入一个SP,我没有太多的运气,所以我把它分解成部分,我卡在以下部分:
ALTER PROCEDURE [dbo].[Exchange Rate] (@CCY char (3))
EXEC('
DECLARE @CurConv float
SET @CurConv = (Select XRATE FROM CURRENCY.dbo.currfx where CODE = ' + @CCY + ')
') END
我不断收到的错误是:
Msg 207, Level 16, State 1, Line 5
Invalid column name 'GBP'.
问题是英镑是不是列的值?任何帮助将非常感激。
感谢
什么是数据库类型? – patrick
你为什么使用动态sql? –
因为我将结果传递给Excel – Carlos80