SQL Server存储过程以不同方式声明变量

时间:2015-06-23 13:13:54

标签: sql-server tsql stored-procedures

我刚刚开始使用MSSQL,需要了解。

我正在阅读一些我可能会在不久的将来使用的示例代码 结果

CREATE PROCEDURE [dbo].[SP_Set_LMS_BY_ERW] @UPA nvarchar(30) = NULL

问题是上面@UPA之间的区别 Declare @count nvarchar(30)

谢谢

1 个答案:

答案 0 :(得分:1)

@UPA nvarchar(30) = NULL是过程参数/参数(在这种情况下,是一个可选参数,因为它被声明为具有NULL作为默认值的参数。所以在调用过程时如果你在调用此过程时,请不要提供@UPA,它将假设NULL

exec  [dbo].[SP_Set_LMS_BY_ERW] @UPA=N'test123'

Declare @count nvarchar(30)是一个局部变量,它将用于某些中间计算或操作,或者在您的过程体中存储一些本地数据。