sql-server-2008 - SQL Server 存储过程中的可选参数

标签 sql-server-2008 stored-procedures optional-parameters

我正在写一些stored procedures在 SQL Server 2008 中。这里可以使用可选输入参数的概念吗?

我想我总是可以传入 NULL 作为我不想使用的参数,检查存储过程中的值,然后从那里获取内容,但我很感兴趣这个概念是否可用。

最佳答案

你可以这样声明:

CREATE PROCEDURE MyProcName
    @Parameter1 INT = 1,
    @Parameter2 VARCHAR (100) = 'StringValue',
    @Parameter3 VARCHAR (100) = NULL
AS

/* Check for the NULL / default value (indicating nothing was passed) */
if (@Parameter3 IS NULL)
BEGIN
    /* Whatever code you desire for a missing parameter */
    INSERT INTO ........
END

/* And use it in the query as so */
SELECT *
FROM Table
WHERE Column = @Parameter

关于sql-server-2008 - SQL Server 存储过程中的可选参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1810638/

相关文章:

sql - 将列名传递给函数

sql-server - 使用 INNER JOIN 的 SQL Server 存储过程

ios - 如何在 Swift 协议(protocol)中定义可选方法?

sql-server-2008 - 如何在 SQL Server 中创建函数

sql - sql server更新查询中的if条件

sql-server - 在 SQL 层次结构数据中移动父 AND 子项

c# - 托管 C++/CLI 方法中的可选参数

c++ - 如何将 C 中声明的可选参数方法转换为 C++

如果参数为空,SQL 将忽略 WHERE 的一部分

SQL Server 2008根据邮政编码显示城市名称