• ベストアンサー

ストアドプロシージャのSET文について

SQLserverのストアドで SET @aaaa = NULL って記述は有効なのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

SQL Server 2000ですと有効です。 しかもLENやDATALENGTHで変数を評価しても大丈夫ですが 取得した戻り値は0ではなく「NULL」状態となります。 作法としてはNULL代入はオススメ致しませんが (アプリケーション側でのバグに繋がりやすいため) 私はdatetime型など初期化に難しい値には NULLをセットして初期化してます。 sample DECLARE @str varchar(100) DECLARE @num int SET @num = null SET @str = null SET @num = DATALENGTH(@str) PRINT ISNULL(CONVERT(varchar, @num), 'NULL')

関連するQ&A