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

📄 administratordb.cs

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

namespace SchoolMIS.DataAccess.Administrator.SQLServer
{
    public class AdministratorDB
    {
        public bool Login(string adminName, string adminPassword)
        {
            //建立数据库连接对象
            SqlConnection conn = new SqlConnection(Constants.ConnString);
            //建立数据库命令对象
            SqlCommand cmd = new SqlCommand();
            cmd.Connection = conn;
            cmd.CommandText = Constants.AdminLogin;
            cmd.CommandType = CommandType.Text;
            SqlParameter paramAdminName = new SqlParameter("@adminName", adminName);
            cmd.Parameters.Add(paramAdminName);
            SqlParameter paramAdminPassword = new SqlParameter("@adminPassword", adminPassword);
            cmd.Parameters.Add(paramAdminPassword);

            try
            {
                conn.Open();
                int result = Convert.ToInt32(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();
                }
            }
        }

        public bool ChangePassword(string adminName, string adminOldPassword, string adminNewPassword)
        {
            //首先检查是否能够通过登陆验证
            if (!Login(adminName, adminOldPassword))
            {
                return false;
            }
            else
            {
                //建立数据库连接对象
                SqlConnection conn = new SqlConnection(Constants.ConnString);
                //建立数据库命令对象
                SqlCommand cmd = new SqlCommand();
                cmd.Connection = conn;
                cmd.CommandText = Constants.ChangePassword;
                cmd.CommandType = CommandType.Text;
                SqlParameter paramAdminName = new SqlParameter("@adminName", adminName);
                cmd.Parameters.Add(paramAdminName);
                SqlParameter paramAdminPassword = new SqlParameter("@adminPassword", adminNewPassword);
                cmd.Parameters.Add(paramAdminPassword);

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

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

        public bool AddTeacher(string teaName, string teaPassword)
        {
            //建立数据库连接对象
            SqlConnection conn = new SqlConnection(Constants.ConnString);
            //建立数据库命令对象
            SqlCommand cmd = new SqlCommand();
            cmd.Connection = conn;
            cmd.CommandText = Constants.AddTeacher;
            cmd.CommandType = CommandType.Text;
            SqlParameter paramTeaName = new SqlParameter("@teaName", teaName);
            cmd.Parameters.Add(paramTeaName);
            SqlParameter paramTeaPassword = new SqlParameter("@teaPassword", teaPassword);
            cmd.Parameters.Add(paramTeaPassword);

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

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

        public DataSet AllTeacher()
        {
            //建立数据库连接对象
            SqlConnection conn = new SqlConnection(Constants.ConnString);
            //建立数据库命令对象
            SqlCommand cmd = new SqlCommand();
            cmd.Connection = conn;
            cmd.CommandText = Constants.AllTeacher;
            cmd.CommandType = CommandType.Text;

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

            DataSet allTeacher = new DataSet();

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

        }

        public bool DeleteTeacherByName(string teaName)
        {
            if (!this.IsUselessTeacher(teaName))
            {
                return false;
            }
            else
            {
                //建立数据库连接对象
                SqlConnection conn = new SqlConnection(Constants.ConnString);
                //建立数据库命令对象
                SqlCommand cmd = new SqlCommand();
                cmd.Connection = conn;
                cmd.CommandText = Constants.DeleteTeacher;
                cmd.CommandType = CommandType.Text;
                SqlParameter paramTeaName = new SqlParameter("@teaName", teaName);
                cmd.Parameters.Add(paramTeaName);

                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="teaName">教师姓名</param>
        /// <returns>没有开设课程 true</returns>
        private bool IsUselessTeacher(string teaName)
        {
            //建立数据库连接对象
            SqlConnection conn = new SqlConnection(Constants.ConnString);
            //建立数据库命令对象
            SqlCommand cmd = new SqlCommand();
            cmd.Connection = conn;
            cmd.CommandText = Constants.IsUselessTeacher;
            cmd.CommandType = CommandType.Text;
            SqlParameter paramTeaName = new SqlParameter("@teaName", teaName);
            cmd.Parameters.Add(paramTeaName);

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

                if (result == 0)
                {
                    return true;
                }
                else
                {
                    return false;
                }

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

⌨️ 快捷键说明

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