数据库综合实验代码展示

这篇博客展示了在C#中实现数据库综合实验的代码,包括登录界面、注册界面以及学生和管理员端口的功能。在登录界面,博主通过创建公共类模拟全局变量存储学生学号。此外,还涵盖了学生信息查询、课程开设、选课关系等模块的代码实现。
摘要由CSDN通过智能技术生成

登录界面在这里插入图片描述

登录界面代码

namespace StudentManagementSystem
{
    
    public partial class LoginForm : Form
    {
        public LoginForm()
        {
            InitializeComponent();
        }
        public string code;
        
        public static string EncryptWithMD5(string source)
        {
            byte[] sor = Encoding.UTF8.GetBytes(source);
            MD5 md5 = MD5.Create();
            byte[] result = md5.ComputeHash(sor);
            StringBuilder strbul = new StringBuilder(40);
            for (int i = 0; i < result.Length; i++)
            {
                strbul.Append(result[i].ToString("x2"));//加密结果"x2"结果为32位,"x3"结果为48位,"x4"结果为64位
            }
            return strbul.ToString();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            string username = UserNametext.Text.Trim();  //取出账号
            string password = EncryptWithMD5(Passwordtext.Text.Trim());  //取出密码并加密

            //if (username == "admin")
            //password = "123";//测试用例,便于初始化时候的 admin 密码 123可以顺利登陆。程序完成后可注释掉这行代码。

            //string connstr = ConfigurationManager.ConnectionStrings["connectionString"].ToString(); //读取连接字符串
            string myConnString = "Data Source=.;Initial Catalog=curricula_variable_system;Persist Security Info=True;User ID=sa;Password=";

            SqlConnection sqlConnection = new SqlConnection(myConnString);  //实例化连接对象
            sqlConnection.Open();

            string sql = "select UserID,UserPassword from SysUser where UserID = '" + username + "' and UserPassword = '" + password + "'";                                            //编写SQL命令
            SqlCommand sqlCommand = new SqlCommand(sql, sqlConnection);

            SqlDataReader sqlDataReader = sqlCommand.ExecuteReader();

            if (sqlDataReader.HasRows && textBox3.Text == code&&comboBox1.SelectedIndex==0)
            {
                common.id = UserNametext.Text.Trim();
                MessageBox.Show("欢迎使用!");             //登录成功
                StudentForm form2 = new StudentForm();
                form2.Show();
                this.Hide();
            }
            else if (sqlDataReader.HasRows && textBox3.Text == code && comboBox1.SelectedIndex == 1)
            {
                common.id = UserNametext.Text.Trim();
                MessageBox.Show("欢迎使用!");             //登录成功
                ManagerForm form2 = new ManagerForm();
                form2.Show();
                this.Hide();
            }
            else
            {
                MessageBox.Show("登录失败!");
                code = null;
                Random ran = new Random();
                int number;
                char code1;
                //取五个数 
                for (int i = 0; i < 5; i++)
                {
                    number = ran.Next();
                    if (number % 2 == 0)
                        code1 = (char)('0' + (char)(number % 10));
                    else
                        code1 = (char)('A' + (char)(number % 26)); //转化为字符 

                    this.code += code1.ToString();
                }

                linkLabel1.Text = code;
                return;
            }
            sqlDataReader.Close();
            sql = "insert into SysLog values ( '" + username + "' , '" + DateTime.Now + "' , '" + "Login" + "')";                                            //编写SQL命令
            sqlCommand = new SqlCommand(sql, sqlConnection);
            sqlCommand.ExecuteNonQuery();
            sqlConnection.Close();
        }

        private void button2_Click(object sender, EventArgs e)
        {
            Application.Exit();
        }

        private void LoginForm_Load(object sender, EventArgs e)
        {
            Random ran = new Random(); 
            int number;
            char code1;
            //取五个数 
            for (int i = 0; i < 5; i++)
            {
                number = ran.Next();
                if (number % 2 == 0)
                    code1 = (char)('0' + (char)(number % 10));
                else
                    code1 = (char)('A' + (char)(number % 26)); //转化为字符 

                this.code += code1.ToString();
            }

            linkLabel1.Text = code;

        }
        //点击验证码可以刷新
        private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
        {
            code = null;
            Random ran = new Random();
            int number;
            char code1;
            //取五个数 
            for (int i = 0; i < 5
数据库概念实验代码。。 在表S,C,SC上完成以下查询: 1. 查询学生的基本信息; 2. 查询“CS”系学生的基本信息; 3. 查询“CS”系学生年龄不在19到21之间的学生的学号、姓名; 4. 找出“CS”系年龄最大的学生,显示其学号、姓名; 5. 找出各系年龄最大的学生,显示其学号、姓名; 6. 统计“CS”系学生的人数; 7. 统计各系学生的人数,结果按升序排列; 8. 按系统计各系学生的平均年龄,结果按降序排列; 9. 查询无先修课的课程的课程名和学时数; 10.统计每位学生选修课程的门数、学分及其平均成绩; 11. 统计选修每门课程的学生人数及各门课程的平均成绩; 12. 找出平均成绩在85分以上的学生,结果按系分组,并按平均成绩的升序排列; 13. 查询选修了“1”或“2”号课程的学生学号和姓名; 14. 查询选修了“1”和“2”号课程的学生学号和姓名; 15. 查询选修了课程名为“数据库系统”且成绩在60分以下的学生的学号、姓名和成绩; 16. 查询每位学生选修了课程的学生信息(显示:学号,姓名,课程号,课程名,成绩); 17. 查询没有选修课程的学生的基本信息; 18. 查询选修了3门以上课程的学生学号; 19. 查询选修课程成绩至少有一门在80分以上的学生学号; 20. 查询选修课程成绩均在80分以上的学生学号; 21. 查询选修课程平均成绩在80分以上的学生学号;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值