vs2022开发
数据库sqlserver和c#winform结合设计的学生信息管理系统
一.需求分析
1.1设计可视化界面,具有身份验证功能,需要登录时输入账号及密码。
1.2学生用户能够注册自己的账号,添加自己的基本注册信息:学号、密码、姓名、性别,对于学生除了基本注册信息外,还包括学生个人信息、课程信息、学生成绩信息。
1.3学生信息、课程信息、学生成绩都能实现增删改查并且符合符合数据库完整性。
1.4每次信息更新后能自动刷新,并且根据更新的值实现动态排序。
二.系统设计
2.1.概念结构设计
2.2逻辑结构设计
2.2.1 关系模式
设计学生成绩管理数据库,包括学生信息表(Student)、课程表(Course)、成绩表(SC)、学生用户表(StudentUser)四个实体,其关系模式中对每个实体定义属性如下:
Student 表:学号(Sno)、姓名(Sname)、性别(Ssex)、年龄(Sage)、专业(Sdept),学号为主码。
Course表:课程编号(Cno)、课程名称(Cname)、先修课(Cpno)、学分(Credit),课程编号位主码。
SC表:学号(Sno)、课程编号(Cno)、分数(Grade),学号和课程编号注
主码。
StudentUser:账号(ID)、密码(Password)、姓名(Name)、性别(Sex),
账号为主码。
2.2.2 表结构设计
学生信息表(Student):
课程表(Course):
成绩表(SC):
学生用户表(StudentUser):
2.3物理结构设计
学生信息表(Student):
课程表(Course):
成绩表(SC):
学生用户表(StudentUser):
三、系统实现
使用工具VS2022,框架:基于.NetFramWork
1.登录注册以及功能选择页面:
(1)实现账号密码验证登录功能,账号密码存储在学生用户表(StudentUser)
五、总结
本次课程设计是使用SQL Server加上.NET FramWork设计,SQL Server设计表实体存储数据,通过.NET FramWork操作数据库进行增删改查,在此之前SQL语句和.NET FramWork都会一点,但是还没有两者一起进行结合设计的经验,而且winfrom设计一点都不会,然后就边做边学,边学边做,将SQL和.NET FramWork结合过程中遇到了很多的困难,比如通过VS连接SQL Server时连接字符串总是出错,幸好在老师的帮助下成功解决,其他的很多问题在网络搜索资料后得以逐步解决,刚开始在这个过程中还是有点困难的,需要一边学习winform设计,一边和.NET FramWork进行交互设计,不断出现新问题,不断解决或许学习的过程就是在这样不断累计的,前后做了一个星期左右,现在做完之后发现也挺简单的,万事开头难,最开始的页面设计和.NET FramWork交互做完了以后,后面的设计都差不多。
课程设计学习了非常多的东西,比如winform设计、通过.NET FramWork操作数据库增删改查、winform和.NET FramWork的交互设计和解决出现bug的能力等,对自己大有裨益也为以后的学习打下了基础。但是由于时间精力和知识限制等原因,也有很多值得改进的地方,比如密码存储加密和登录验证码等,在以后进一步学习之后希望能解决这些问题。