簡體   English   中英

將顯式 NULL 值從 T-SQL 而非應用程序傳遞給存儲過程

[英]Pass explicit NULL value to stored procedure from T-SQL not from application

以智慧告終如何在 SSMS 中將空值傳遞給我的存儲過程? 我已經將我的兩個參數設置為可選的,例如。

 --This is inside my storedproc
 @name varchar(50)
 @surname varchar(50) = null,
 @text varchar(255) = null,

現在執行

 --Now execute without the 'text'
 EXEC sp_bla 'Noob Question Name', 'Noob Surname'
EXEC sp_bla NULL, 'Noob Question Name', 'Noob Surname'

基本上,只需在所需位置傳遞 NULL 作為參數值

試試這個如果你想定義所有三個參數然后

EXEC sp_bla @name = 'Noob Question',@surname = 'Noob',@text = 'Newtext'

如果你想定義任何兩個

EXEC sp_bla @name = 'Noob Question',@surname = 'Noob'

或者

EXEC sp_bla @name = 'Noob Question',@text = 'Text' 

如果你沒有其他兩個

EXEC sp_bla @name = 'Noob'

只需將存儲過程保持原樣,然后在沒有不需要的參數的情況下執行。

示例: EXEC sp_bla @name = 'Noob Question Name', @surname = 'Noob Surname'

在執行 SP 時,只需保留任何接受 null 的參數即可將其設置為 null

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM