[英]SQL Server Transaction procedure
我正在创建一个交易程序。 我的第一个if语句第一个if语句显示“ expecting variable”时出现语法错误,其他所有内容都无法正常工作,不确定为什么会遇到麻烦。\\这是代码
Create Proc DP_Test4Transaction
@ReorderLevel Decimal(5,0) =Null,
@StockLevel decimal(5,0)= null,
@StockOnOrder decimal(5,0) =null
as
Declare @PartDescription Varchar (10)= NULL,
//Here is where i am getting the error
If @ReorderLevel IS NULL
begin
Print 'You must enter a number for ReorderLevel'
Print 'Order Not Processed'
print ' '
return
end
If @StockLevel is Null
Begin
print 'A number must be entered for stocklevel'
print 'Order Not Processed'
Print ''
Return
End
If @StockOnOrder is null
Begin
Print 'A number must be entered for StockOnOrder'
Print 'Customer not inserted'
Print ''
Return
End
Begin Transaction
Insert into InventoryPart
(PartDescription,ReorderLevel,StockLevel,StockOnOrder)
Values(@PartDescription,@ReorderLevel, @StockLevel, @StockOnOrder)
Select @PartDescription = (Select Partdescription From InventoryPart
Where @PartDescription = PartDescription)
If exists (Select PartDescription from InventoryPart where Partdescription = @PartDescription)
Begin
Print ' The PartDescription'+ @PartDescription+'is already in the database'
print ' you must select a different Partdescription'
Print ' Item not inserted'
print ''
Rollback
end
else
begin
Commit Transaction
print 'Part has been added'
print ''
print ''
End
您可能不需要整个代码,以防万一我错过了某个地方
看起来您的声明语句后需要删除一个错误的逗号。
Declare @PartDescription Varchar (10)= NULL,
摆脱逗号,然后尝试再次解析TSQL。
Declare @PartDescription Varchar (10)= NULL,
似乎是语法错误。
养成用;结束完整代码行(句子)的习惯。
将来可能需要这样做。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.