基于C#结合SQL设计学生成绩系统系统

基于C#结合SQL设计学生成绩系统系统

这是数据库大作业,原本想的是用python和SQL,但遇到了很多错误,相对C#也很麻烦,因此换了C#。但还是先记录一下基于python时的错误,错误基本是在连接数据库时发生的。

错误集合

  • 需要打开对应服务器的TCP/IP 协议,而且修改后需要重启服务器!!!

详细操作步骤:

  • 需要修改IPAII的TCP端口为1433,
    详细操作步骤:
  • 需要连接服务器
  • 采用Windows身份认证登陆自己电脑上的数据库时,一定要有host

python连接数据库代码

conn = pymssql.connect(host = 'localhost',server='LENOVO-PC\LOKII',database = "S-T")

以下为C#部分

呈现效果

基本布局如下,就最基本的那种窗口体。

listview效果

在这里插入图片描述

datagridview效果

在这里插入图片描述

C#代码

C#的语言风格和C挺像的,简洁规范,不会太难,很容易上手。这个系统用的的C#控件也不多,除了button和text,也就是listview和datagridview,这两个只要弄清楚最基本的规则也差不多够用了。

每个窗体就相当于一个单独的子程序,所以需要声明全局变量,从而获得老师的登录名用于成绩展示的部分。

  • 声明全局变量

    1.先新建一个cs文件,声明全局变量

    2.在登录页将用户名保存为需要传递的字符串

    3.在别的窗体使用该字符串

//1
namespace 学生成绩系统
{
   
    class stloginname
    {
   
        public static string passData;
    }
}


//2            
            teloginname .passData = textBox1.Text.Trim ();//保存传递的字符串
            查询所教课程  myForm = new 查询所教课程 ();//构建B窗体的一个实例

//3
            string tno = "";
            tno = teloginname .passData;
  • 数据库连接部分,这里连接的是本地数据库,所以没有设置服务器名字。若需远程连接,需确保与要连接的数据库处于同一个局域网中。
            SqlConnection conn = new SqlConnection("server=;uid=sa;pwd=12345678;database=ScoreSearch");
            conn.Open();
  • 窗口跳转部分,从登录页面跳回开始页面(即成绩系统)。
            成绩系统 f = new 成绩系统();
            f.Owner = this;
            this.Hide();
            f.ShowDialog();
            Application.ExitThread();
  • 登录部分的设计,算是静态登录,不是动态。即不是给每一个登录用户在数据库里面创建一个身份,而是在表记录他们的用户名和密码。从而直接将获得的登录名、密码与表里面的进行匹配,然后直接以sa的身份登录进去。
            string loginname = textBox1.Text.Trim();   //获取文本框里输入的用户名
            string loginpwd = textBox2.Text.Trim();
            
            //检查输入是否为空
                        if (String.IsNullOrEmpty(loginname) || String.IsNullOrEmpty(loginpwd))
            {
   
                MessageBox.Show("用户名或密码不能为空");
                return;
            }
            
            
            //获取表里所记录的用户名和密码并进行匹配
            string st1 = "select 班主任编号 from classteacher_info where (班主任编号='" + textBox1.Text + "')";
            SqlCommand my1 = new SqlCommand(st1, conn);
            SqlDataReader sdr = my1.ExecuteReader();
            if (sdr.HasRows)
            {
   
                sdr.Close()
  • 3
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
系统主要用于学校学生信息管理,总体任务是实现学生信息关系的系统化、规范化和自动化,其主要任务是用计算机对学生信息进行日常管理,如查询、修改 、增加、删除,另外还考虑到用户登录的权限,针对学生信息和权限登录的学生成绩管理系统。 本系统主要包括注册管理、教师管理、学生信息查询、添加、修改、删除等部分。其功能主要有: (1)学生信息的添加,包括输入学生基本信息和成绩。 (2)学生信息的查询,包括查询学生基本信息和成绩。 (3)学生信息的修改,包括修改学生基本信息和成绩。 (4)学生信息的删除,包括修改学生基本信息和成绩。 (5)登录用户密码修改,用户登录到系统可进行相应的用户密码修改。 (6)管理员用户对用户名的管理,包括添加新用户、删除用户。 学生成绩管理系统是典型的信息管理系统,其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。 经过分析,我们使用Microsoft公司的Visual C#2008 Express Edition开发工具,利用其提供的各种面向对象的开发工具,尤其是数据窗口这一能方便而简洁操纵数据库的智能化对象,首先在短时间内建立系统应用原型,然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成用户满意的可行系统

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值