HI,
我在存储过程中有一个insert语句,它要求值数据是文本和变量/输入的组合。但是,当我尝试编译它时,我的SQL管理器在这个'camp'值上给出了错误。
以下是目前存在的陈述;
BEGIN TRAN
INSERT INTO TBL_DONATIONS ([donations_MemberID], [donation_Ref], [donations_Debit]) VALUES (@tmp_Id, "camp"+@tmp_Id+"/Key"+@tmp_IDENTITY, @tmp_Pledge)
COMMIT
我想这可能是我使用错误的格式来连接形成'“阵营”的部分+ @ tmp_Id +“/ Key”+ @ tmp_IDENTITY'???????
任何帮助都非常受欢迎。
谢谢!
答案 0 :(得分:3)
答案 1 :(得分:3)
你得到的确切错误是什么?
如果没有进一步的信息,您可能需要转换以下变量,因为您使用的命名约定会让我相信它们是整数,并且您将它们与字符串连接起来:
试试这个: 'camp'+ CAST(@tmp_Id as varchar)+'/ Key'+ CAST(@tmp_IDENTITY as varchar)
答案 2 :(得分:2)
使用单引号'not“
答案 3 :(得分:1)
您需要在将值粘贴到VALUES子句之前准备值,或将其更改为INSERT INTO ... SELECT ...查询。 后者会更容易。
编辑:并使用单引号,而不是双引号。