我在一个社交网络上工作,我的一个程序返回一个 VARCHAR 输出。所以这就是我写的:
SqlParameter job1 = cmd2.Parameters.Add("@job", SqlDbType.VarChar);
job1.Direction = ParameterDirection.Output;
但是出现了这个错误:
String[1]:Size 属性的大小为 0 无效。
我在一个社交网络上工作,我的一个程序返回一个 VARCHAR 输出。所以这就是我写的:
SqlParameter job1 = cmd2.Parameters.Add("@job", SqlDbType.VarChar);
job1.Direction = ParameterDirection.Output;
但是出现了这个错误:
String[1]:Size 属性的大小为 0 无效。
指定参数时需要定义一个长度:varchar
SqlParameter job1 = cmd2.Parameters.Add("@job", SqlDbType.VarChar, 50);
您应该使用与 SQL Server 存储过程中定义的长度相同的长度。
顺便说一句:如果您的存储过程也没有定义长度(类似于@job VARCHAR OUTPUT
) - 那么您定义了一个varchar
长度为 1 个字符的字符串......
是的,必须定义varchar
/nvarchar
数据类型的长度,如下所示。
cmd.Parameters.Add("@Description", SqlDbType.VarChar, 150).Direction =
ParameterDirection.Output;