У вас есть строка кода, которая говорит
string query2 = @"insert into ReviewPaper(Overall_Rating, Paper_id,
Conference_role_id, Deitails) values (0,@paperId,@ConferenceRoleId,@Deitails);
select SCOPE_IDENTITY() as RPID";
Вы предоставляете параметры @paperId
, @ConferenceRoleId
и @Deitails
для значений для оператора вставки.Позже вы указываете значение для первых двух параметров, но не @Deitails
:
cmd.Parameters.AddWithValue("@paperId", paperId);
cmd.Parameters.AddWithValue("@ConferenceRoleId", ConferenceRoleId);
Вам необходимо добавить аналогичную строку, чтобы добавить значение для @Deitails
, чтобы SQL-сервер знал, что делать сЭто.Вы получаете сообщение об ошибке с сервера SQL, поскольку, не добавляя значение для @Deitails
в коде C #, оно не объявляется для вас в коде SQL, отправляемом на сервер.
Комуответьте на другой вопрос, в данном случае «Скаляр» означает, что переменная @Deitails
представляет одно значение.