gpt4 book ai didi

c# - T-SQL(varchar(max)与 CLR(字符串,SqlString,SqlChars)?

转载 作者:太空狗 更新时间:2023-10-29 18:15:19 29 4
gpt4 key购买 nike

我有一个问题,我无法解决。我正在使用 SQL Server 2005,C# CLR 来使用外部 dll。问题在于参数的长度。我需要使用 varchar(max) 作为函数参数类型。如果在 C# 代码中我使用 stringSqlSring,我不能使用 T-SQL 类型 varchar(max),只能使用 varchar nvarchar(4000) 的 (4000)。我需要说的是,在某些情况下,我需要使用超过 4000 个符号,所以我需要知道我需要为 varchar(max) 使用什么 C# 类型。

我读了很多文章,其中有几篇说,为此我可以使用 SqlChars。但!我对字符串进行了操作。如何使用 stringSqlString 进行操作,然后转换为 SqlChars? (可能是 SqlChars.ToString()SqlChars.ToSqlString())。

我没有为此找到任何 C# 代码。

最佳答案

您需要做的是将 SqlFacet(MaxSize = -1) 属性添加到参数中:

[return: SqlFacet(MaxSize = -1)]
[Microsoft.SqlServer.Server.SqlFunction(IsDeterministic = true)]
public static SqlString YourSqlFunction([SqlFacet(MaxSize = -1)]SqlString sourceSS)
{ return new }

关于c# - T-SQL(varchar(max)与 CLR(字符串,SqlString,SqlChars)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7580123/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com