在我的代码中,我将string result
值传递给我的存储过程
try
{
using (SqlStoredProcedure sspObj = new SqlStoredProcedure("dbo.usp_CloseEvent", Connection, CommandType.StoredProcedure))
{
sspObj.AddParameterWithValue("@Close", SqlDbType.VarChar, 0, ParameterDirection.Input, result);
sspObj.ExecuteNonQuery();
sspObj.Dispose();
}
}
catch (Exception xObj)
{
Console.WriteLine("Error >> " + xObj.Message);
}
默认SqlDbType.VarChar
大小为 1 到 8000 个字符。我的问题是如果我的string
变量result
大小超过 8000 个字符怎么办
什么是解决方案?
我的存储过程看起来像这样
ALTER PROCEDURE [dbo].[usp_CloseEvent]
@Close VarChar(Max)
AS
SqlStoredProcedure.cs
virtual public SqlParameter AddParameterWithValue(string parameterName,
SqlDbType dbType,
int size,
ParameterDirection direction,
object value) {
SqlParameter p = this.AddParameter(parameterName, dbType, size, direction);
if (value == null) {
value = DBNull.Value;
}
p.Value = value;
return p;
}
数据库是 SQL SERVER 2008