我有一個字符串屬性可能或不可爲空。如何將可空字符串傳遞給來自C的SP#
db.AddInParameter(InsertMessageDetailCommand, "MyParam", System.Data.DbType.String, this.myParam);
領域在SP定義如下:
@MyParam nvarchar(50)
我怎樣才能改變SP允許空值
我就用這個調用傳遞給SP ,如果參數值爲空,稍後在SP中將一個空值插入數據庫表中?
感謝
我有一個字符串屬性可能或不可爲空。如何將可空字符串傳遞給來自C的SP#
db.AddInParameter(InsertMessageDetailCommand, "MyParam", System.Data.DbType.String, this.myParam);
領域在SP定義如下:
@MyParam nvarchar(50)
我怎樣才能改變SP允許空值
我就用這個調用傳遞給SP ,如果參數值爲空,稍後在SP中將一個空值插入數據庫表中?
感謝
要聲明爲可選的存儲過程的參數:
@MyParam nvarchar(50) = NULL
例如:
CREATE PROCEDURE TestProc
(
@Param1 varchar(50) = NULL
)
AS
SELECT
*
FROM
TestTable
WHERE
((@Param1 IS NULL) OR (col1 = @Param1))
但請注意,這種模式,許多參數使用時,可能會導致由於「參數嗅探」而導致錯誤緩存的查詢計劃。
讓我測試一秒...... – 2009-09-30 10:42:17
更新,錯過了等號! – 2009-09-30 10:42:55
關鍵字'NULL'的語法不正確 – 2009-09-30 10:43:05
對不起 - 錯誤的粘貼代碼,讓我更新。 – 2009-09-30 10:41:28