logo资料库

学生考试管理系统课程设计报告.doc

第1页 / 共20页
第2页 / 共20页
第3页 / 共20页
第4页 / 共20页
第5页 / 共20页
第6页 / 共20页
第7页 / 共20页
第8页 / 共20页
资料共20页,剩余部分请下载后查看
1.设计目的和任务
2.开发环境
2.1硬件环境
2.2软件环境
3.设计题目
3.1题目名称
3.2题目详细描述
3.3功能要求
4.相关技术及知识点
4.1 SqlConnection对象
4.2 SqlCommand对象
4.3 SqlDataAdapter对象
4.4 DataTable对象
4.5 DataSet对象
5.设计与实现
5.1登录界面
5.2教师管理界面
5.3管理员管理界面
5.4学生考试界面
6.总结
7.参考资料
目录 1. 设计目的和任务 ........................................................1 2.开发环境 ...............................................................1 2.1 硬件环境 ..........................................................1 2.2 软件环境 ..........................................................1 3.设计题目 ...............................................................1 3.1 题目名称 ..........................................................1 3.2 题目详细描述 ......................................................1 3.3 功能要求 ..........................................................2 4.相关技术及知识点 .......................................................3 4.1 SqlConnection 对象 ................................................3 4.2 SqlCommand 对象 ...................................................3 4.3 SqlDataAdapter 对象 ...............................................4 4.4 DataTable 对象 ....................................................4 4.5 DataSet 对象 ......................................................5 5.设计与实现 .............................................................6 5.1 登录界面 ..........................................................6 5.2 教师管理界面 ......................................................7 5.3 管理员管理界面 ...................................................12 5.4 学生考试界面 .....................................................14 6.总结 ..................................................................18 7.参考资料 ..............................................................19
《高级数据库技术(ADO.NET&XML)》课程设计报告 1.设计目的和任务 综合运用 ADO.NET 相关知识,设计一个具有实用价值的学生考试管理系统。 (1)巩固和加深对本课程基本知识的理解和掌握; (2)掌握 C#编程和 ADO.NET 程序调试的基本技能; (3)掌握设计 ADO.NET 应用软件的基本思路和方法; (4)提高运用 ADO.NET 解决实际问题的能力; (5)培养撰写设计报告的能力。 2.开发环境 2.1 硬件环境 笔记本电脑 硬件概要 CPU 主板 内存 显卡 主硬盘 声卡 网卡 英特尔 Genuine Intel(R) CPU T2130 @ 1.86GHz Wistron - 英特尔 945PM (Calistoga-PM) + ICH7-M/U 金士顿 2G DDR2-SDRAM 666 MHz nVIDIA GeForce Go 7200 (G72) 希捷 120GB 英特尔 82801GB ICH7 - High Definition Audio [B0] 英特尔 PRO/Wireless 3945ABG Network Connection (HP - RoW) 2.2 软件环境 Microsoft Windows XP 操 作 系统 ; Microsoft SQL Server 2005; Microsoft Visual Studio 2005; 3.设计题目 3.1 题目名称 学 生 考试 管 理 系 统 3.2 题目详细描述 1、 登 录界 面 -1-
《高级数据库技术(ADO.NET&XML)》课程设计报告 2、 新 用户 注 册 3、 教 师管 理 界 面 4、 管 理员 管 理 界 面 5、 学 生在 线 考 试 3.3 功能要求 登录界面 功能: 1) 用户对应相应的权限进行登录,分教员、学生、管理员。登录后根据选择的 权限进入相应的界面; 2) 输入用户名框非空,密码框非空,权限选择判断; 3) 新学员用户注册。注册后需管理员激活才能登录。 教师管理界面 功能(按菜单项说明): 1) 试题管理,子菜单如下: 增加试题; 查询试题:按科目查询试题; 试题列表:按难度查询试题列表,并可增加、修改试题。 2) 考试管理,子菜单如下: 生成试卷; 试卷管理:查看试卷信息、激活/取消试卷。 3) 成绩管理,按试卷名查寻成绩。要算出平均分。 管理员管理界面 功能(按菜单项说明): 1) 用户管理,子菜单如下: 新建用户:新建学员用户,新建教员用户。 查询及修改学员。 用户信息列表,包括查询以及教员学员信息 2) 题库管理,管理试题库 学生在线考试 1) 维护个人信息 对个人信息进行查询, 修改 -2-
《高级数据库技术(ADO.NET&XML)》课程设计报告 2)在线答题。 功能:可以选择已激活试卷答题。 在线评分。 保存考试成绩可供教师查询。 4.相关技术及知识点 ADO.NET 提供了多种对象模型,比较典型的以下有五种,它们全部归类 System.Data.SqlClient 名称空间下。 4.1 SqlConnection 对象 ADO.NET 使用 SqlConnection 对象与 SQL Server 进行连接。连接字符串的常用形式有两种: 1.使用 Windows 集成安全身份认证, 例如:string connectionString ="IntegratedSecurity=SSPI;Database=MySchool.mdf;Server=localhost;"; 2.在连接字符串中指定服务器名、用户 id、用户口令、数据库名等信息。 例如:string connectionString = "server=localhost; uid=sa; pwd=123; database=MySchool.mdf"; 然后通过连接字符串直接创建 SqlConnection 对象,如 SqlConnection conn = new SqlConnection(connectionString); 4.2 SqlCommand 对象 在 ADO.NET 中,有两种操作数据库的方式: 1.无连接的方式; 2.保持连接的方式。 不论哪种都可以通过 SqlCommand 对象提供的方法传递对数据库操作的命令,并返回命令执行结果。 在保持连接的方式下操作数据库的一般步骤为: 1.创建 SqlConnection 的实例; 2.创建 SqlCommand 的实例; 3.打开连接; 4.执行命令; 5.关闭连接。 SqlCommand 对象提供了多种完成对数据库操作的方法。常用有: -3-
《高级数据库技术(ADO.NET&XML)》课程设计报告 1.ExecuteNonQuery 该方法执行 SQL 语句的结果,但不返回命令执行的表数据,仅返回操作所影响的行数。 2.ExecuteReader ExecuteReader 方法提供了只向前的、顺序的快速读取数据库中数据的方法。 3.ExecuteScaler() 该方法用于执行 SELECT 查询,得到的返回结果为一个值的情况,比如使用 count 函数求表中记录 个数或者使用 sum 函数求和等。 4.3 SqlDataAdapter 对象 SqlDataAdapter 对象通过无连接的方式完成数据库和本地 DataSet 之间的交互。使用这种方 式操作数据库的一般步骤为: 1.创建 SqlConnection 的实例; 2.创建 SqlDataAdapter 的实例,需要的话,根据 select 语句生成其他 SQL 语句; 3.创建 DataSet 的实例; 4.使用 Fill 方法将数据库中的表填充到 DataSet 的表中; 5.利用 DataGridView 或者其他控件对象编辑或显示数据; 6.需要的话,使用 Update 方法更新数据库。 SqlDataAdapter 对象通过 SelectCommand、InsertCommand、UpdateCommand 和 DeleteCommand 属 性为后台数据库提供对应的操作命令,并传递需要的参数。一般情况下,只需要提供 SELECT 语句 和连接字符串创建 SqlDataAdapter 对象,然后利用 SqlCommandBuilder 对象生成 InsertCommand、 UpdateCommand 和 DeleteCommand 属性。 4.4 DataTable 对象 ADO.NET 可以在与数据库断开连接的方式下通过 DataSet 或 DataTable 对象进行数据处理,当 需要更新数据时才重新与数据源进行连接,并更新数据源。DataTable 对象表示保存在本机内存中 的表,它提供了对表中行列数据对象的各种操作。可以直接将数据从数据库填充到 DataTable 对象 中,也可以将 DataTable 对象添加到现有的 DataSet 对象中。在断开连接的方式下,DataSet 对象 提供了和关系数据库一样的关系数据模型,代码中可以直接访问 DataSet 对象中的 DataTable 对象, 也可以添加、删除 DataTable 对象。 1. 创建 DataTable 对象 可以通过以下两种方式创建 DataTable 对象: 1) 通过 DataTable 类的构造函数创建 DataTable 对象,例如: DataTable table = new DataTable(); -4-
《高级数据库技术(ADO.NET&XML)》课程设计报告 2) 通过 DataSet 的 Tables 对象的 Add 方法创建 DataTable 对象,例如: DataSet dataset = new DataSet(); DataTable table = dataset.Tables.Add("MyTableName"); 2. 在 DataTable 对象中添加列 在 DataTable 对象中添加列的最常用的方法是通过 DataTable 对象的 Column 属性中的 Add 方法。 添加后的每一列都是一个 DataColumn 对象。 3. 设置 DataTable 对象的主键 关系数据库中的表一般都有一个主键,用来惟一标识表中的每一行记录。通过 DataTable 对象的 PrimaryKey 属性可以设置 Datatable 的主键。主键可以是一个或者多个 DataColumn 对象组成的数 组。例如: DataColumn[] key = new DataColumn[1];//dt 是一个 DataTable 对象 key[0] = dt.Columns[0]; dt.PrimaryKey = key; 4. 在 DataTable 对象中创建行 DataTable 对象的每一行都是一个 DataRow 对象,所以创建行时可以先利用 DataTable 对象的 NewRow 方法创建一个 DataRow 对象,并设置新行中各列的数据,然后利用 Add 方法将 DataRow 对 象添加到表中 5. 将 SQL Server 数据库中的表填充到 DataTable 中 除了可以直接创建 DataTable 对象的行列信息外,也可以通过 DateAdapter 对象的 Fill 方法将 SQL Server 数据库中的表填充到 DataTable 对象中。 4.5 DataSet 对象 1. 创建 DataSet 对象 使用创建的 DataSet 对象可以完成各种数据操作,利用向导生成的数据库数据源是一个强类型的 DataSet 以及一对或多对强类型的 DataTable 和 TableAdapter 的组合。类型化的 DataSet 是一个 生成的类,是从.NET Framework 的一般 DataSet 类衍生来的,但提供了已定义的架构以及特定于 该架构的属性和方法。同时,对于 DataSet 中的每个表,还生成了特定于该 DataSet 的附加衍生类, 而且每个类都为相关的表提供了特定的架构、属性和方法。 当然,也可以直接创建一般的 DataSet 对象,例如: DataSet myDataset = new DataSet(); 2. 填充 DataSet 对象 创建 DataSet 后,就可以使用 SqlDataAdapter 对象把数据导入到 DataSet 对象中,比如通过 Fill 方法将数据填充到 DataSet 中的某个表中。 -5-
《高级数据库技术(ADO.NET&XML)》课程设计报告 5.设计与实现 (包 括 每个 设 计 点 的 文字 描 述 , 图 表, 关 键 代 码) (该说明在最终报告里面要删除!) 5.1 登录界面 在登录界面(图 5-1)用户对应相应的权限选择用户类型进行登录,分教员、学生、管理员。登录 后根据选择的权限进入相应的界面。输入用户名框非空,密码框非空,权限选择判断;登录界面还 有新用户注册,同样是选择不同用户类型进行注册。注册后需管理员激活才能登录。还有一个就是 找回密码,用户通过输入用户名和姓名等信息找回密码。 图 5-1 登录界面代码: if (ValidateInput()) { // 验证输入成功 string message = ""; // 验证输入的密码 if (loginBll.ValidateUser(txtLoginId.Text.Trim(), txtLoginPwd.Text, cboLoginType.Text, ref message)) { // 记录登录用户名和登录类型 UserHelper.loginId = txtLoginId.Text; UserHelper.loginType = cboLoginType.Text; if (cboLoginType.Text == "教师") -6-
《高级数据库技术(ADO.NET&XML)》课程设计报告 { // 创建教员主窗体对象 TeacherForm teacherForm = new TeacherForm(); // 显示窗体 teacherForm.Show(); } else if (cboLoginType.Text == "学生") { StudentForm studentForm = new StudentForm(); studentForm.Show(); } else { AdminForm adminForm = new AdminForm(); adminForm.Show(); } // 登录窗体隐藏 this.Visible = false; } 5.2 教师管理界面 在教师管理界面(图 5-2)中有以下菜单和按钮: *选择题目(图 5-3):右键选择题目加入到新建的试卷中; *成绩管理(图 5-4)选择不同的试卷进行查询,读取数据到 DataSet,然后用 DataSet 中数据计算该 试卷的平均分;也可以直接修改 DataSet 中表的数据,然后保存。 增加试题:先输入好题目,然后提交,将数据插入数据库中; 还有一些其它的功能,查询试题:按科目查询试题;试题管理:按难度查询试题列表,并可增加、 修改试题。试题列表,按难度查询试题列表,并可增加、修改试题然后保存,将数据保存到数据库; -7-
分享到:
收藏