为SqlCommand参数指定大尺寸是否有缺点?

时间:2018-08-22 11:24:06

标签: c# parameters sqlcommand

我正在编写一个应用程序,该应用程序执行来自特殊文本文件的查询,并带有来自用户的参数。

我使用类似于以下代码的代码来添加参数:

IDbCommand command = GetSomeCommand();
object parameter = GetSomeParameter();
IDbDataParameter parameter = command.CreateParameter();
parameter.ParameterName = "Param1";
if (parameter is string s)
{
  parameter.Size = (s.Length + 9) / 10 * 10;
  parameter.Value = s;
  command.Parameters.Add(parameter);
}
else
{
  ...
}

向上舍入到下一个10是为了减少查询计划缓存的数量。 我的问题是:我可以总是始终使用-1(对于VARCHAR(MAX))或8000作为大小,这是否有明显的缺点?

0 个答案:

没有答案