2010-11-18 16 views
4

入力パラメータがnvarchar(max)のSQL Server CLRプロジェクトでCLRストアドプロシージャを作成することはできますか?Nvarchar(max)パラメータでCLRストアドプロシージャを作成する方法?

ストアドプロシージャを定義した場合:次に

< Microsoft.SqlServer.Server.SqlProcedure()> _
公共共有 サブMyProcedure(ByValのPARAM1文字列として)

あなたをそれを展開すると、param1はNVarchar(4000)型になります。それをNVARCHAR(最大)にする方法はありますか?

答えて

3

SqlFacet属性を使用できます。あなたは戻り値としてそれを必要とする場合は、ユーザー定義関数で

[SqlProcedure] 
public static void storedProcedure1([SqlFacet(MaxSize=-1)] String param){ .. } 

:あなたは、パラメータとしてNVARCHAR(MAX)タイプをしたい場合は、この操作を行う必要があります

[return:SqlFacet(MaxSize=-1)] 
[SqlFunction] 
public static String userFunction1(){ ... } 

のMaxSize = -1を示していますNVARCHARのサイズはMAXになります。

関連する問題