私はばかげているように感じますが、このSPの既定値を設定することはできません....ここでパラメータを宣言しています。私は@cacheStatus
のためにデフォルトにnotReady
を得ることができない以外SQL Server 2008のストアドプロシージャの既定のパラメータ値
ALTER PROCEDURE [dbo].[PCS_DocumentCacheInsert]
(
@sessionId varchar(200),
@mrn varchar(50) ,
@fromDate datetime,
@toDate datetime,
@aggregate varchar(50),
@author varchar(50),
@datePerformed dateTime,
@docId varchar(15),
@encounterId varchar(15),
@facility varchar(5),
@level char(1),
@orderedByAuthor varchar(50),
@resultAuthor varchar(50),
@resultCode varchar(5),
@resultId varchar(30),
@resultName varchar(30),
@status varchar(5),
@subType varchar(10),
@type varchar(10),
@security varchar(3),
@serviceGroup varchar(15),
@witmurNum varchar(10),
@deptId varchar(10),
@deptText varchar(40),
@cacheCreateTS dateTime ,
@cacheStatus varchar(8) ='notReady',
@cacheUpdateTS datetime
)
すべてがこのprocのと正常に動作します。 Googleは正しい構文を使用していると言います。ここ
は私が= @return_value
GO
SELECT '戻り値は、' 私は今、この、その作業を追加しましたが、私は理解していない
EXEC @return_value = [dbo].[PCS_DocumentCacheInsert]
@sessionId = N'asdfssa',
@mrn = N'asdf',
@fromDate = NULL,
@toDate = NULL,
@aggregate = NULL,
@author = N'author',
@datePerformed = NULL,
@docId = N'id',
@encounterId = NULL,
@facility = NULL,
@level = NULL,
@orderedByAuthor = NULL,
@resultAuthor = NULL,
@resultCode = NULL,
@resultId = NULL,
@resultName = NULL,
@status = NULL,
@subType = NULL,
@type = NULL,
@security = NULL,
@serviceGroup = NULL,
@witmurNum = NULL,
@deptId = NULL,
@deptText = NULL,
@cacheCreateTS = NULL,
@cacheStatus = NULL,
@cacheUpdateTS = NULL
MS
で呼び出す方法ですなぜ私が右クリックしてストアドプロシージャを実行すると、ヌルチェックボックスを選択するのがなぜデフォルトにならないのでしょうか。私はnullをチェックすると、DBNullではなくprocに 'NULL'を送信すると思いますか?if @cacheStatus is null
begin
set @cacheStatus ='notReady'
end
あなたはSPが呼び出されたかのサンプルを提供することができる任意のチャンス? – Justin
構文がよさそうです。 @cachStatusに渡している値を確認してください。 (つまり、1つも渡していないことを確認してください)。 – Chains
エンティティフレームワーク(WCFサービスから)とマネージメントスタジオで同じ動作を呼び出して、値をデフォルトにしないでください。 – cobolstinks