我有一個問題,我解決不了。我使用的是SQL Server 2005中,C#CLR使用外部DLL。問題我需要使用作爲函數參數類型varchar(max)
。如果在C#代碼我使用string
,SqlSring
,我不能使用T-SQL類型varchar(max)
,只需varchar(4000)
nvarchar(4000)
。我需要說,這可以是當我需要使用超過4000個符號時,所以我需要知道,我需要使用什麼C#類型來處理varchar(max)
。T-SQL(VARCHAR(最大值)VS CLR(字符串的SqlString,SqlChars)?
我已經閱讀了很多文章,其中有幾篇文章說,爲此我可以使用SqlChars
。但是!我有操縱字符串。我怎麼可以採取行動string
或SqlString
然後轉換爲SqlChars
? (這可能是SqlChars.ToString()
或SqlChars.ToSqlString()
)。
我沒有找到任何C#代碼。
一個'VARCHAR(最大)目前正使用它的最大容量將不加載到CLR字符串'字符串,因爲它會耗盡地址空間。你能更明確地說明你想對這些字符串執行什麼操作嗎? –
我將任何SQL類型轉換爲varchar並將此值發送到外部dll。比,對它進行操作並返回到SQL Server。現在我使用SQL/vchar(4000)和C#/字符串。我需要超過4000個符號。 –
@Damien_The_Unbeliever:我的印象是既SQL Server的'VARCHAR(最大值)'還有一個.NET'string'例如可能高達2 GB的大小.... –