从查询返回int值的int类型函数的返回值是什么?

Ikr*_*Ikr -2 c#

以下是我的代码.我想'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)

Ami*_*oki 6

而不是CommandObj.ExecuteNonQuery();,你可以这样做:

return Convert.ToInt32(CommandObj.ExecuteScalar());
Run Code Online (Sandbox Code Playgroud)

您应该ExecuteNonQuery()仅在更新或插入语句时使用.在返回单个结果的查询中,您可以调用可以转换为ExecuteScalar()哪个返回.objectint

在旁注.我没有看到你查询参数.不要这样做.否则,它很容易进行sql注入.

您必须使用参数化查询.