Я передаю значение хранимой процедуре, но он продолжает давать мне ошибку преобразования данных типа nvarchar в int. Что нужно изменить, чтобы удалить ошибку? Ниже мой фактический вызов, и хранимая процедураПеременная перехода от кода к хранимой процедуре
private static string ReturnPhoneNumber()
{
string username = "Roy Orbinson";
string databaseConnection = "Data Source=EmployeeServer;Initial Catalog=StoreInfo;Integrated Security=True;MultipleActiveResultSets=True";
SqlConnection connection = new SqlConnection(databaseConnection);
SqlCommand command = new SqlCommand("GimmeThatPhoneNumber", connection);
command.CommandType = CommandType.StoredProcedure;
command.Parameters.Add("@username", username);
connection.Open();
var result = Convert.ToString(command.ExecuteScalar());
connection.Close();
return result;
}
SQL:
[dbo].[GimmeThatPhoneNumber]
(
@username int
)
as
Set NoCount On
SELECT phonenumber
FROM personelinformation
where employeename = @username
Также возможно, что параметр является идентификатором пользователя (vs name), и код должен сначала найти идентификатор пользователя, связанный с этим именем пользователя – Gus