这是在存储过程中处理可选参数的好方法吗?

在存储过程中,我有一个可选参数@UserId(uniqueidentifier)。在要使用的SQL中,如果提供了参数,则需要在where子句中使用它。如果不是,那么我应该忽略它。请记住,我有几个可选参数。

要处理此问题,这是我一直在做的事情:

where (usr.UserId = @UserId OR @UserId is null)

以这种方式进行操作是否有一些讨厌的副作用?

这是在MS SQL Server 2014中。

zhuxiaoliang811 回答:这是在存储过程中处理可选参数的好方法吗?

应该没问题,但是如果您有很多可选参数,那么您可能希望研究动态sql http://www.sqlservertutorial.net/sql-server-stored-procedures/sql-server-dynamic-sql/

本文链接:https://www.f2er.com/3149440.html

大家都在问