此代码有什么问题?
CREATE PROCEDURE Proc
(
@factura_id int, @produs_id int, @pret float, @cantitate int,@nr_ordine int
)
as
--declare @factura_id int, @produs_id int, @nr_ordine int, @pret float, @cantitate int
begin
if(((select COUNT (id_produs) from Produse where id_produs=@produs_id)=1))
insert into FacturaProdus(id_factura,id_produs,pret,cantitate,nr_ordine)
values(@factura_id,@produs_id,@pret, CONCAT ('-',convert(float,@cantitate),@nr_ordine))
else
begin
print 'hei'
end
end
我无法找到解决方案。当我执行它时,它会给我:
第15行,第1行,第1行,第1行 关键字' Proc'附近的语法不正确 Msg 137,Level 15,State 2,Line 8
必须声明标量变量" @ produs_id"。
Msg 137,Level 15,State 2,Line 9
必须声明标量变量" @ factura_id"。
怎么办?
答案 0 :(得分:3)
Proc
是reserved word(我假设你是根据语法和错误消息使用它的。)
所以,如果你真的想创建具有这样名字的程序(我建议你选择另一个名字) - 将它括在方括号中:
CREATE PROCEDURE [Proc]
(
.....