版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、KUNMING UNIVERST?课程设计(大作业)报告课程名称:软件代码开发技术(C#)设计题目:设计一个学生管理系统院 系:信息技术学院班 级:08级本科4班设计者:王辉学 号:438指导教师:王亚宁设计时间:昆明学院昆明学院课程设计(大作业)任务书姓名:王辉院(系):信息技术学院专 业:计算机科学与技术学 号:438任务起止日期:课程设计题目:设计一个学生管理系统课程设计要求:1)使用访问和操作数据库。2)在C#中可以连接数据库,并对数据库进行修改。3)完成用户管理模块,课程管理模块,选课管理模块,成绩管理模块的界面及代码设计。4)进行合理的界面更改,部分运行结果截图留档(SQL运行界面
2、,C# NET运行界面)。5)规定时间内安要求完成代码及作业工作计划及安排:第一阶段:6月4号6月5号,图书馆借阅图书资料,上网搜索学生 信息管理系统背景资料。第二阶段:6月6号6月8号,完成用户管理模块、课程管理模块、 成绩管理模块的代码编写。第三阶段:6月9号,完成成绩管理模块的代码编写,及完善程序整 体代码编写。第四阶段:10号,完成报告编写,及部分文档归总。指导教师签字课程设计(大作业)成绩学号:438姓名:王辉指导教师:王亚宁 课程设计题目:设计一个学生管理系统总结:在进行本次课程设计时,我遇到了很多困难和学习到了很多知 识。下面我将主要总结我所遇到的困难,及自己的解决方法。以及自
3、己学到的知识点。开始着手在C中建立与SQL数据库连接时,连接数据库时在连 接句前加上虧符相对于单一的连接语句更容易连接得上在对DataAdapter数据集中数据表的行数据、列名进行修改时,可以通过数据集中表的行二维数组t .Rowsij.ToString()来实现,其中i为行标,j为列标。在对数据行数进行读取时,可采用t.来实现。学生在从第一个登录界面窗体登录学号进入信息查看界面窗体 时,要保证学号信息能准确无误的传输到信息查看界面窗体才可以在 信息查看窗体中查看该学生的个人信息。开始时我只是在信息窗体 Form8中实例化Form1对象,结果无法获取Form1窗口中的中的学生 学号信息。经过进
4、一步查找资料,我明白了在信息窗体Form8中调用 Forml中的属性或函数,与在 Forml中调用Form8中的属性或函数不 一样。窗体Forml下,其中的属性和函数都有确定的值或表达式,直 接调用Form8将值传进去可行,因为此时Forml中的数据存在;而在 Form8窗体中调用Forml窗体中的函数和属性,贝卩Forml窗体已经关 闭,改窗体中的也就无值了,获取该窗体中中的学生学号信息也就无 法实现。通过编写代码,使我很熟练的可以运用 C知的数据集Dataset、 Conn ecti on 对象、Comma nd寸象、DataResder 对象禾口 DataAdapter 对象。并对 SQ
5、L的 select、insert、delete、update 熟练掌握。指导教师评语:成绩:填表时间:指导教师签名:课程设计(大作业)报告一、题目分析1.背景分析编写目的本需求的编写目的在于研究学籍管理系统软件的开发途径和应 用方法。以及明确所要开发的软件应具有的功能、性能与界面,是系 统分析人员及软件开发人员能清楚的了解用户的需求,并再次基础上 进一步提出概要设计说明书和完成后续设计与开发工作。项目背景近年来随着高校的扩招,需要处理的学生信息日趋加大,不仅花 费大量的教师资源,处理的效果还十分低下。为了提高学生管理的管 理水平,优化资源,尽可能的降低管理成本,成为学生管理的新课题。 学生管理
6、系统是从学生管理的现状出发, 根据学生管理的新要求进行 开发设计的,它解决了学生管理数据信息量大,修改不方便,对一系 列数据进行统计与分析花费时间长等问题,帮助学生管理人员有效管 理学生信息,成为高校管理中必不可少的管理工具。2.系统功能分析管理员对功能的需求管理员权限最大,可以对学生、班级、课程情况进行统一的管理, 细分如下:添加、修改、删除管理员;有关学生信息的浏览,包括学生姓名、性别、民族、出生日期、 入学时间、所在班级、籍贯和备注信息;学生信息的添加、修改和删除;学校基本课程的浏览,包括课程名、课程类型、学时、学分和课 程具体描述;学校基本课程的添加、修改和删除;学生成绩信息的浏览与统
7、计,可按成绩具体范围对成绩进行统 计;学生成绩信息的添加、修改和删除;学生选课信息的管理,包括修改与删除;学生选课人数的统计。学生对功能的需求学生只是利用此系统进行与自己有关的信息查询、 输入等,细分如下:浏览个人基本信息, 具体内容包括姓名、 学号、民族、出生日期、 籍贯、所在班级、备注等;学生登陆系统后,修改个人密码;浏览课程信息,具体内容包括课程名、课程类型、学时、学分和 课程具体描述;学生利用此系统选修课程、在选课过程中,可查询待选课程基本 信息;浏览个人选课情况。可行性分析1技术可行性本系统采用WindowsXP及其以上版本作为操作平台。数据库管理 系统选用SQL该数据库管理系统,提
8、供数据库之间的数据复制功能, 可代替现有系统单据数据的手工传递工作, 降低出错率, 提高数据的 可用性。本系统的应用程序开发平台选用 Microsoft Visual studio 2005。2经济可行性采用前台学籍信息管理系统可取代原系统的单手工传递工作,减少人工开支,节省资金,并且可大大提高信息量的取得,缩短信息 处理周期提高学生信息的利用率,使教学质量更上一个台阶。3营运可行性本系统操作简单,易于理解,只需通过简单培训,上手较快,学 校学籍管理处的教职员以及相关教师均能进行操作,营运环境要求 低。面对于系统设计还应该以“标准性、安全性、高效性、保密性、 可维护性” 为标准,在着眼于当前实
9、用的基础上, 为将来系统的扩展, 升级留有余地。软件的开发应能在较长时间内满足学校的发展需要。标准性: 系统编写与运行必须符合标准, 既可以保证系统运行又 可以在此标准上每一项功能运行。可靠性:由于学籍信息的重要性,系统必须稳定可靠,从而避免 或减少数据损失。安全性: 通过系统权限控制使用者, 从而确保使用者无法操作与其无 关的数据。高效性: 由于学校学生信息每次处理信息量较大, 系统对信息处理能力响应能力都应是快捷有效的可维护性:采用结构化模块设计,便于开发与维护,也有利于情况随时三、总体设计1. 总体功能描述本系统主要是实现前台参与者(管理员和学生)的界面实际操作来 更改后台数据库信息,并
10、能够在前台显示出来。其归根结底也就是对 数据的插入、修改、删除和查询。2. 系统层次图学生信息管理系统是一个典型的数据库应用程序,由用户管理、课程管理、选课管理和成绩管理四大模块组成。 这四大模块针对管理 员和学生角色其功能也不一样。(1)用户管理模块:该模块的主要任务是管理员对系统的使用权限进行设定,从而来管理管理员与学生的系统登录权限。(2)课程管理模块:该模块的使用角色为管理员,管理员对课程进行管理。如添加、 修改、删除课程。(3)选课管理模块:该模块的角色为管理员和学生,管理员。学生可以进行合理的选 课、退选课,管理员则通过此模块查看学生选课信息。(4)成绩管理模块:该模块的角色为管理
11、员,管理员通过此模块进行合理的成绩添 加。3. 数据流图4. 数据库设计系统E-R图 (1)学生管理系统实体间关系E-R图(2)学生管理系统用户信息实体图(4)学生管理系统课程信息实体图(5)学生管理系统学生-课程信息实体图表/字段分析(1)用户信息数据表(Users)列名数据类型大小字段描述User_idvarchar50用户名,设为主键User_passwordvarchar50用户密码User_powerint4记录用户类型,0-学生,1-管理员(2)学生信息数据表(Student)列名数据类型大小字段描述Stude nt_idvarchar50学生学号,设为主键Stude nt_n a
12、mevarchar50学生姓名Stude nt_sexchar5学生性别(CHECKS 或女)Stude nt_n ati onchar5学生民族Stude nt_birthda ydatetime8学生出生日期Stude nt_timedatetime8学生入学时间Stude nt_classvarchar50学生所在班级Stude nt_homevarchar50学生住址Stude nt_elsevarchar50备注列名数据类型大字段描述课程信息数据表(Course)列名数据类型大字段描述小Course_idvarchar50课程号,设为主键Courseamevarchar50课程名Co
13、urse_periodint4课程学时Course_creditint4课程学分Course_describevarchar50课程具体描述(4)学生选课记录数据表(Student_Course)列名数据类型大小字段描述IDbigi nt8学生选课记录ID号,设为主键,自动编号Stude nt_idvarchar50学生学号,外键Course_idvarchar50学生所学课程号,外键Stude nt_gradeint4学生成绩Course_yearchar5年度学期四、开发工具硬件:惠普笔记本一台软件:WindowsXP 操作系统、SQLServer 2005、Visual Studio 2
14、005五、运行结果获取连接字符串:割数据證捺居性凶赵 u tl 啡 4*T*d ural 粕E卯鱼*理nl4b;Ev*rf!l:ki iiq aFtr tfeis lm 1-g an KILE DO IninTriAqi rr*uLdir-lVLflLfM. 1; 1 ntScwits-S-SF 1 siPfEist Neurits数据库中主要表的建立: 课程表表dbo. CaiETscI 未庞接 - SQLQueryS, sqj. LBDZ-O5列:吕允许空Course idCocirse_ri3fnenvcrch 前倚 0)nvarchar(S0)Cajrse_periodintCours
15、ejcredit Course describenvarchar(50) Be学生表d_b o. SimdenlL一 db&. StuAent列名Student id数据类型 nvarchar50)Student_nane 宝 udent_sex 5tudent_nationnvarcharSO)nchar(10nthar(5)datetimedatetime5tudent_birthdayStudent_timeStudent_das sStudentjTornsStudent elsanvarcharXSO)nvarchar50nvarchar(5O5运行界面管理员、学生登陆窗口豉迎直录信
16、息技点宁降宁生官理吞址用尸名: 密码:J-i-Ti命专工丽1露理丢豈昔B姦1U录諱育noi管理员管理窗口管理员成绩添加窗口成绩信息窗口Hlfx逋过课程萱找应醍勰:后咼等;详细信息200811构萝学语 结粟语数英 仔据柞学等学 狀数操犬高丈课程刃:学哥课程:鸥:学期:00012D08L10141G匚粽呈厚设计93勿11年下予期确定学生查看课程信息就邈光临学生售理系统于人信息课程信月成繽芟诲 両梅改密码00血慄程列表二课程详g皓息掘矣学语 氐一鲁学 操犬高犬课程编号:谍程名:学时;学分;课堤焉谨:王振江敎撮)支讲退岀六、参考资料1. C#S序设计教程 蒙祖强等编著清华大学出版社2010年第一版2.
17、 数据库应用技术(第二版)SQL Server 2005申时凯、李海燕主编中国铁道出版社七、代码一共有12个界面,也就有12个窗口的代码1) Form1,登陆界面窗口 using System;using using ;using ;using ;usingnamespaceStudentspublic partial class Form1 : Formpublic Form1()InitializeComponent();EventArgsprivate void button1_Click( object sender, e)i+)t .Rowsi0.ToString();int ite
18、m = ;if (item = -1)item = 0;= item.ToString();for ( int i = 0; i t .; i+)if t .Rowsi0.ToString() = t .Rowsi1.ToString();= t .Rowsi2.ToString();break ;catch ( Exception ex)finallyif (conn != null ) ();();private void button1_Click( object sender, EventArgs e)int j = 0;int flag = 0;for ( int i = 0; i
19、0) ( 成功插入数据 );catch ( Exception exe)finallyif (conn != null ) ();(); showdata();else( 添加格式不正确,请从新添加 ! );private void button2_Click( object sender, EventArgse)int j = 0;int flag = 0;for ( int i = 0; i 0) ( 成功更新数据! );catch ( Exception exe)5finallyif (conn != null ) ();();showdata();else( 修改格式不正确,请从新修改
20、! );else(数据库中无此用户的ID,无法进行修改!);private void button3_Click( object sender, EventArgs e)string strsql2 =delete from Users whereUser_id= + + ;SqlCommandcmd3 = new SqlComman(d);try= conn;= strsql2;();int n = ();if (n 0) ( 成功删除数据! );catch ( Exception exe)finallyif (conn != null ) ();();showdata();EventArg
21、sprivate void button4_Click( object sender,e)();Form2 f2 = new Form2();();objectprivate void listBox1_SelectedIndexChanged( sender, EventArgs e)int item = ;= item.ToString();for( inti = 0; i t .; i+)if t .Rowsi0.ToString() = t .Rowsi1.ToString();= t .Rowsi2.ToString();break ;2) Form4 学生信息窗口using Sys
22、tem;using ;using ;using ;using ;using Studentspublic partial class Form4 : FormSqlConnection conn = null ;SqlDataAdapter DataAdapter = null ;DataSet dataset = null ;string ConnectionString = Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=stu_admin;Data Source=LBDZ-05020115SQLEX
23、PRESS;public Form4()InitializeComponent();for ( int i = 0; i t .; i+)private void Form4_Load( object sender, EventArgs e) conn = new SqlConnection (ConnectionString); showdata();private void showdata()();DataAdapter = new SqlDataAdapter (); dataset =new DataSet ();SqlCommandcmd = new SqlComman(d);=
24、conn;= select * from Student ;= cmd;(dataset, t );tryowsi;t .Rowsi1.ToString(); int item = ;if (item = -1)item = 0;= item.ToString();for ( inti = 0; i t .; i+)ifH,t .Rowsi1.ToString() =tI!.Rowsi0.ToString();tI!.Rowsi2.ToString();tI!.Rowsi3.ToString();tI!.Rowsi4.ToString();tI!.Rowsi5.ToString();tI!.R
25、owsi6.ToString();tI!.Rowsi7.ToString();t .Rowsi8.ToString();break ;catch ( Exception ex)5finallyif (conn != null ) ();();objectprivate void listBox1_SelectedIndexChanged( sender, EventArgs e)int item = ;= item.ToString();for( int i = 0; i t .; i+)if t .Rowsi1.ToString() = t .Rowsi0.ToString();= t .R
26、owsi2.ToString();= t .Rowsi3.ToString();= t .Rowsi4.ToString();= t .Rowsi5.ToString();= t .Rowsi6.ToString();= t .Rowsi7.ToString();= t .Rowsi8.ToString();break ;privatevoid button1_Click( object sender, EventArgse)int j = 0;int flag = 0;for ( int i = 0; i 0) ( 成功插入数据 );catch ( Exception exe)finally
27、if (conn != null ) ();(); showdata();else( 添加格式不正确,请从新添加 ! );private void button2_Click( object sender, EventArgse)int j = 0;int flag = 0;for ( int i = 0; i t .; i+)if t .Rowsi1.ToString() =j = i;flag = 1;break ;if (flag = 1)if != )string strsql1 =update Student set strsql1 += Student_id= + ;strsql1
28、 +=,Student_sex= + ;strsql1 +=,Student_nation= + ;strsql1 +=strsql1 +=,Student_birthday=,Student_time= + ;5+ ;5strsql1 +=,Student_class=+ ;5strsql1 +=,Student_home=+ ;5strsql1 +=,Student_else=+ + strsql1 += where Student_name= + +HillSqlCommandcmd2 = new SqlComman(d); tryi+)owsi;t .Rowsi1.ToString()
29、;int item = ;if (item = -1)item = 0;= item.ToString();for ( int i = 0; i t .; i+)if t .Rowsi1.ToString() = t .Rowsi0.ToString();= t .Rowsi2.ToString();= t .Rowsi3.ToString();= t .Rowsi4.ToString();break ;catch( Exception ex)finallyif (conn != null ) ();();privatevoid button1_Click( object sender, Ev
30、entArgse)intj = 0;intflag = 0;for( int i = 0; i 0) ( 成功插入数据 );if t .Rowsi1.ToString() =j = i; flag = 1;break ;if (flag = 1)if != )stringstrsql1 +=strsql1 +=strsql1 +=strsql1 +=strsql1 +=Hillstrsql1 = update Course set ; Course_id = + ;,Course_period= + ; ,Course_credit= + ;,Course_describe= + ; wher
31、e Course_name= + +SqlCommandcmd2 = new SqlComman(d);tryoString();for( int i = 0; i t .; i+)ifI!I!.Rowsi1.ToString() =tI!.Rowsi0.ToString();tI!.Rowsi2.ToString();tI!.Rowsi3.ToString();tI!.Rowsi4.ToString();break ;3) Form6 成绩信息窗口 using System;using ;using ;usingusing ;using Studentspublic partial clas
32、s Form6 : FormSqlConnection conn = null ;SqlDataAdapter DataAdapter = null ;DataSet dataset = null ;string ConnectionString = IntegratedSecurity=SSPI;Persist Security Info=False;InitialCatalog=stu_admin;Data Source=LBDZ-05020115SQLEXPRESS;public Form6() InitializeComponent();private void Form6_Load(
33、 object sender, EventArgs e) conn = new SqlConnection (ConnectionString);();DataAdapter =new SqlDataAdapter ();dataset =new DataSet ();SqlCommandcmd = new SqlComman(d);= conn;=select * from Course;= cmd;(dataset, t );tryfor ( int i = 0; i t .; i+)t .Rowsi1.ToString();catch ( Exception ex)5finallyif
34、(conn != null ) ();();= 0;showdata(0); private void showdata( int item)conn = new SqlConnection (ConnectionString);();DataAdapter = new SqlDataAdapter ();dataset =new DataSet ();SqlCommandcmd1 = new SqlComman(d);= conn;trystring str1 = item.ToString();= select , , , , ;+=from Course , Student_Course
35、 +=where = += and =+ str1 +Hill= cmd1;(dataset,t1I!);if t1 . != 0)elsefor ( int i = 0; i t1 .; i+)t1 .Rowsi1.ToString();III!III!III!III!III!catch ( Exception ex)finallyif (conn != null ) ();();for ( int i = 0; i t1 .; i+)if t1 .Rowsi1.ToString() =0.ToString()= t1= t1= t1= t1= t1break ;.Rowsi0.ToStri
36、ng();.Rowsi1.ToString();.Rowsi2.ToString();.Rowsi3.ToString();.Rowsi4.ToString();private void comboBox1_SelectedIndexChanged( objectsender,EventArgs e)int item = ;showdata(item);private void listBox1_SelectedIndexChanged( object sender, EventArgs e)int it = ;= it.ToString();iffor ( int i = 0; i t1 .
37、; i+) t1 .Rowsi1.ToString() =t1.Rowsi0.ToString();t1.Rowsi2.ToString();t1.Rowsi3.ToString();t1.Rowsi4.ToString();break ;private void button2_Click( object sender, EventArgs e)();Form2 f2 = new Form2();();private void button1_Click( object sender, EventArgs e)conn =new SqlConnection (ConnectionString
38、);();DataAdapter = new SqlDataAdapter ();dataset =new DataSet ();SqlCommandcmd2 = new SqlComman(d);= conn;= update Student_Course set Student_grade= + + where = + + ;= cmd2;(dataset, t2 );if (conn != null ) ();();4) Form7 选课信息窗口using System;using ;using ;using ;using ;using Studentspublic partial cl
39、ass Form7 : FormSqlConnection conn = null ;SqlDataAdapter DataAdapter = null ;DataSet dataset = null ;string ConnectionString = IntegratedSecurity=SSPI;Persist Security Info=False;InitialCatalog=stu_admin;Data Source=LBDZ-05020115SQLEXPRESS;public Form7()InitializeComponent();private void Form7_Load
40、( object sender, EventArgs e)conn = new SqlConnection (ConnectionString);();DataAdapter = new SqlDataAdapter ();dataset =new DataSet ();SqlCommandcmd = new SqlComman(d);= conn;select * from Course= cmd;(dataset, t );tryfor ( int i = 0; i t .; i+)t .Rowsi1.ToString();catch ( Exception ex)5finallyif (
41、conn != null ) ();();wdata(0);= 0;private void showdata( int item)conn = new SqlConnection (ConnectionString); ();DataAdapter = new SqlDataAdapter (); dataset = new DataSet ();SqlCommandcmd1 = new SqlComman(d);= conn;trystring str1 = item.ToString();= select , , , ;+=from Course , Student_Course +=where = ;+= and = + str1 + ;= cmd1;(dataset, t1 );if t1 . != 0)for ( int i = 0; i t1 .; i+) owsi2.ToString();else_III!一5_III!一5_III!一5_III!一5catch ( Exception ex)5finallyif (conn != null ) ();();for ( int i = 0; i t1 .; i+)if t1 .Rowsi2.ToString() =
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度生鲜配送与冷链仓储管理承包合同3篇
- 2025年度体育场馆场地租赁及赛事运营管理服务协议2篇
- 2024皮鞋品牌代理权购销合同范本3篇
- 二零二五年度施工安全风险评估与管理合同3篇
- 2025年度高科技公司股东退股协议书3篇
- 2025年度房地产项目成本控制与合同管理协议3篇
- 二零二五年猫咪宠物保险代理合同2篇
- 2025年跨境电商项目监控与管理服务合同2篇
- 二零二五年度环保产业投资合作合同6篇
- 二零二四年医疗器械研发合同
- 2025年慢性阻塞性肺疾病全球创议GOLD指南修订解读课件
- DB11-T 825-2021绿色建筑评价标准
- 原材料试验工作程序与质量管理制度
- 人教版八年级下册英语单词默写(可直接打印)
- 糖厂热力衡算(6000吨每天)
- 燃气有限公司危险作业安全管理规定
- 北京市刑事诉讼律师事务所函(担任诉讼代理人适用)格式文书(2020版)
- XX镇“我为群众办实事”满意度调查问卷
- (完整版)Brownbear绘本
- 鲁教版初中英语七年级下册单词汉语(背诵)
- 玻璃纤维拉丝作业中几个常见问题的处理
评论
0/150
提交评论