Sql Parameter.Size和Output参数

时间:2013-12-11 15:29:43

标签: c# .net sql-server

直到现在我从未在调用带参数的过程时指定参数大小。 但突然有一天我收到了一个错误:

  

String [2]:Size属性的大小无效。

我以前从未见过它,它只能在输出参数中得到证实。 所以我的问题是我什么时候需要调整参数大小,因为它可以很好地作为输入..

并且,关于输出和输出/输入。我有一个参数设置为:

@HtmlImageType  VARCHAR(30) OUTPUT

但是当我查看表格参数时,它被归类为输入/输出,而在我的C#代码中,它仅适用于输出。

1 个答案:

答案 0 :(得分:1)

  

但是当我查看表格参数时,它被归类为输入/输出

那是因为你实际上发送 in 一个参数,该参数可以在过程中更改,并且该值持久保存到调用者, out 参数。

  

所以我的问题是我什么时候需要调整参数大小,因为它可以作为输入正常工作

您需要始终调整它们的大小,因为类型是可变的,VARCHAR。但是,当提供值input时,会推断出大小。作为out,它无法推断出该尺寸,因此默认值为0