2012-04-19 12 views
0

次のコードはエラーを送信します。Int変数内のNvarcharステートメント

@ resp2はINTです。これは、喜んで行われた合計の結果です。ですから、私はディナミカルなステートメントを使って別のテーブルの行を更新したいと思っています。私が試した

SET @SQL = 'update TelepromTableNamesInfo set [Resp] = '[email protected]+' 
       where nombre = ''' + @TableWBraq + '''' 
EXEC (@SQL) 

最初のものは '' '+ @ RESP2 +' '' しかし、それはですので、私はそれが

'変数値が'

なりたくありませんINT値で、 ''の必要はありません。 ''

エラーが発生します。 INT値を文字列に入れることはできません。私はキャストや変換を使用するが、私はどのようにステートメント内でそれを行うことができますか? 間違った視点からアップデートに近づいていますか?

ありがとうございました。

EDIT解決

'+ cast(@RESP2 as nvarchar(7))+' 

私は思ったよりも簡単でした。

答えて

2
SET @SQL = 'update TelepromTableNamesInfo set [Resp] = '+ CAST(@RESP2 AS VARCHAR(50)) +' 
       where nombre = ''' + @TableWBraq + '''' 
EXEC (@SQL) 
+0

はい:次のことを試してみてください!私はあなたがそれを書いてしまう前にそれを試していました。ありがとう、そうだった。 –

0

シングルクォートで問題が発生している可能性があります。

SET @SQL = 'update TelepromTableNamesInfo set [Resp] = '[email protected]+ 
       'where nombre = '"' + @TableWBraq + '"' 
EXEC (@SQL) 
関連する問題