Свойство "Размер" имеет недопустимый размер 0
Я работаю над социальной сетью, одна из моих процедур возвращает выход VARCHAR.
Так вот что я написал:
SqlParameter job1 = cmd2.Parameters.Add("@job", SqlDbType.VarChar);
job1.Direction = ParameterDirection.Output;
Однако эта ошибка возникает:
String [1]: свойство Size имеет недопустимый размер 0.
Ответы
Ответ 1
При указании параметра varchar
вам нужно определить длину:
SqlParameter job1 = cmd2.Parameters.Add("@job", SqlDbType.VarChar, 50);
Вы должны использовать ту же длину, что и в хранимой процедуре SQL Server.
И btw: если ваша хранимая процедура также не имеет определенной длины (что-то вроде @job VARCHAR OUTPUT
), то вы определили строку varchar
длиной 1 символ......
Ответ 2
Да, нужно определить длину для типа данных varchar
/nvarchar
, как показано ниже.
cmd.Parameters.Add("@Description", SqlDbType.VarChar, 150).Direction =
ParameterDirection.Output;