⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 coursedb.cs

📁 学生学籍管理
💻 CS
字号:
using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Data.SqlClient;

namespace SchoolMIS.DataAccess.Student.SQLServer
{
    public class CourseDB
    {
        /// <summary>
        /// 获取所有的课程信息
        /// </summary>
        /// <returns>所有的课程信息</returns>
        public DataSet GetAllCourse()
        {
            //建立数据库连接对象
            SqlConnection conn = new SqlConnection(Constants.ConnString);
            //建立数据库命令对象
            SqlCommand cmd = new SqlCommand();
            cmd.Connection = conn;
            cmd.CommandText = Constants.GetAllCourse;
            cmd.CommandType = CommandType.Text;

            SqlDataAdapter dataAdapter = new SqlDataAdapter();
            dataAdapter.SelectCommand = cmd;

            DataSet allCourse = new DataSet();

            try
            {
                dataAdapter.Fill(allCourse, "course");
                return allCourse;
            }
            catch (SqlException ex)
            {
                return null;
            }
            finally
            {
                //确保数据库连接被关闭
                if (conn.State == ConnectionState.Open)
                {
                    conn.Close();
                }
            }
        }

        /// <summary>
        /// 依据学号获取学生选课记录
        /// </summary>
        /// <param name="stuNum">学号</param>
        /// <returns>DataSet:选课记录</returns>
        public DataSet GetSelectedCourse(string stuNum)
        {
            //建立数据库连接对象
            SqlConnection conn = new SqlConnection(Constants.ConnString);
            //建立数据库命令对象
            SqlCommand cmd = new SqlCommand();
            cmd.Connection = conn;
            cmd.CommandText = Constants.GetSelectedCourse;
            cmd.CommandType = CommandType.Text;
            SqlParameter paramStuNum = new SqlParameter("@stuNum", stuNum);
            cmd.Parameters.Add(paramStuNum);

            SqlDataAdapter dataAdapter = new SqlDataAdapter();
            dataAdapter.SelectCommand = cmd;

            DataSet selectedCourse = new DataSet();

            try
            {
                dataAdapter.Fill(selectedCourse, "course");
                return selectedCourse;
            }
            catch (SqlException ex)
            {
                return null;
            }
            finally
            {
                //确保数据库连接被关闭
                if (conn.State == ConnectionState.Open)
                {
                    conn.Close();
                }
            }
        }

        /// <summary>
        /// 添加学生选课信息
        /// </summary>
        /// <param name="stuNum">学生学号</param>
        /// <param name="courseID">课程编号</param>
        /// <returns>成功--true</returns>
        public bool AddSelectedCourse(string stuNum, int courseID)
        {
            //首先判断该课程是否已经选择
            if (this.IsSelectedCourse(stuNum, courseID))
            {
                return true;
            }
            else
            {
                //建立数据库连接对象
                SqlConnection conn = new SqlConnection(Constants.ConnString);
                //建立数据库命令对象
                SqlCommand cmd = new SqlCommand();
                cmd.Connection = conn;
                cmd.CommandText = Constants.AddSelectedCourse;
                cmd.CommandType = CommandType.Text;

                //添加参数
                SqlParameter paramStuNum = new SqlParameter("@stuNum", stuNum);
                cmd.Parameters.Add(paramStuNum);
                SqlParameter paramCourseID = new SqlParameter("@courseID", courseID);
                cmd.Parameters.Add(paramCourseID);

                try
                {
                    conn.Open();
                    cmd.ExecuteNonQuery();
                    conn.Close();

                    return true;
                }
                catch (SqlException ex)
                {
                    return false;
                }
                finally
                {
                    //确保数据库连接被关闭
                    if (conn.State == ConnectionState.Open)
                    {
                        conn.Close();
                    }
                }
            }
        }

        /// <summary>
        /// 判断课程是否已经选择
        /// </summary>
        /// <param name="stuNum">学号</param>
        /// <param name="courseID">课程编号</param>
        /// <returns>已经选择-->true</returns>
        public bool IsSelectedCourse(string stuNum, int courseID)
        {
            //建立数据库连接对象
            SqlConnection conn = new SqlConnection(Constants.ConnString);
            //建立数据库命令对象
            SqlCommand cmd = new SqlCommand();
            cmd.Connection = conn;
            cmd.CommandText = Constants.IsSelectedCourse;
            cmd.CommandType = CommandType.Text;

            //添加参数
            SqlParameter paramStuNum = new SqlParameter("@stuNum", stuNum);
            cmd.Parameters.Add(paramStuNum);
            SqlParameter paramCourseID = new SqlParameter("@courseID", courseID);
            cmd.Parameters.Add(paramCourseID);

            try
            {
                conn.Open();
                int result = (int)cmd.ExecuteScalar();
                conn.Close();

                if (result == 1)
                {
                    return true;
                }
                else
                {
                    return false;
                }
            }
            catch (SqlException ex)
            {
                return false;
            }
            finally
            {
                //确保数据库连接被关闭
                if (conn.State == ConnectionState.Open)
                {
                    conn.Close();
                }
            }
        }

        /// <summary>
        /// 删除已选的课程信息
        /// </summary>
        /// <param name="scID">选课记录编号</param>
        public bool DeleteSelectedCourse(int scID)
        {
            //建立数据库连接对象
            SqlConnection conn = new SqlConnection(Constants.ConnString);
            //建立数据库命令对象
            SqlCommand cmd = new SqlCommand();
            cmd.Connection = conn;
            cmd.CommandText = Constants.DeleteSelectedCourse;
            cmd.CommandType = CommandType.Text;
            SqlParameter paramSCID = new SqlParameter("@scID", scID);
            cmd.Parameters.Add(paramSCID);

            try
            {
                conn.Open();
                cmd.ExecuteNonQuery();
                conn.Close();

                return true;
            }
            catch (SqlException ex)
            {
                return false;
            }
            finally
            {
                //确保数据库连接被关闭
                if (conn.State == ConnectionState.Open)
                {
                    conn.Close();
                }
            }
        }
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -