Mas*_*ons 4 c# asp.net stored-procedures sql-server-2008
我将值传递给存储过程,但它一直给我一个错误错误,将数据类型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;
}
Run Code Online (Sandbox Code Playgroud)
SQL:
[dbo].[GimmeThatPhoneNumber]
(
@username int
)
as
Set NoCount On
SELECT phonenumber
FROM personelinformation
where employeename = @username
Run Code Online (Sandbox Code Playgroud)
问题是你的输入参数有一个int类型 - 但需要是一个字符串类型:
[dbo].[GimmeThatPhoneNumber]
(
@username int
)
Run Code Online (Sandbox Code Playgroud)
@username 应该:
@username nvarchar(200) --pick an appropriate size
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
61 次 |
| 最近记录: |