以下是我的代码.我想'int'类型函数将返回'int'value.Query在此代码中返回一个'int'值,但在此代码中返回值是什么?我不能在这里写return get_number.那我该怎么办?
我的代码:
public int CheckMatch(CourseSchedule courseInfo)
{
try
{
ConnectionObj.Open();
string get_number = "SELECT count(c_t_id) FROM course_teacher_table WHERE room_number = '" + courseInfo.RoomNumber + "' and class_days = '" + courseInfo.Days + "' and class_time = '" + courseInfo.ClassTime + "'";
CommandObj.CommandText = get_number;
CommandObj.ExecuteNonQuery();
return '???'
}
catch (Exception ex)
{
throw ex;
}
finally
{
if (ConnectionObj != null && ConnectionObj.State == ConnectionState.Open)
{
ConnectionObj.Close();
}
}
}
Run Code Online (Sandbox Code Playgroud)
而不是CommandObj.ExecuteNonQuery();,你可以这样做:
return Convert.ToInt32(CommandObj.ExecuteScalar());
Run Code Online (Sandbox Code Playgroud)
您应该ExecuteNonQuery()仅在更新或插入语句时使用.在返回单个结果的查询中,您可以调用可以转换为ExecuteScalar()哪个返回.objectint
在旁注.我没有看到你查询参数.不要这样做.否则,它很容易进行sql注入.
您必须使用参数化查询.
| 归档时间: |
|
| 查看次数: |
66 次 |
| 最近记录: |