2017-02-28 18 views
0

SQL Serverストアドプロシージャのdatetimeオプションパラメータを設定するにはどうすればよいですか?SQL Serverのストアドプロシージャでdatetimeオプションのパラメータを設定するには?

以下は私のストアドプロシージャです。@LocalDateTimeがnullの場合、@ LocalDateTime = utcdateを設定します。

ストアドプロシージャは:

Create PROCEDURE [dbo].[ABC] 
( 
    @LocalDateTime datetime=getutcdate() 
) 
+0

何かしますか?もしそうなら、何?それはなぜあなたが必要とするものではないのですか? または言い換えれば:あなたの質問をして、人々が助けが必要なものを理解できるようにしてください。 – Burki

答えて

3

パラメータのデフォルト値は定数でなければなりません。あなたは、ストアドプロシージャの本体内に設定することができます

Create PROCEDURE [dbo].[ABC] 
( 
    @LocalDateTime datetime = null 
) 

as 

begin 

    set @LocalDateTime = ISNULL(@LocalDateTime,GETUTCDATE()) 

end 

詳細情報hereをMSDNで。

デフォルト
パラメータのデフォルト値:ここに抜粋したものです。デフォルト値がパラメータに対して と定義されている場合、そのパラメータに の値を指定せずにプロシージャを実行できます。 デフォルト値は定数であるか、 はNULLでなければなりません。

+0

感謝@Andrea、実際に私は宣言に値を割り当てたいと思ったが、それは不可能だと思う.. –

関連する問題