《ASP.NET项目实训》课程论文
题目  学生信息管理系统 
姓    名:                 
学    号:                 
班    级:                 
负责模块: 学生管理,课程管理模块
小组成员:                 
成    绩:                 
评阅教师:                 
2009年 12月9日
学生信息管理系统
摘要
学生管理系统用于对学生信息管理,教师信息管理,班级管理,成绩管理,学生所在院系,专业管理等。
目录:
系统功能分析………………………………………………………………2
数据库设计…………………………………………………………………2
各个数据表创建……………………………………………………………3
存储过程创建………………………………………………………………5
学生信息管理系统总括……………………………………………………6
登录模块……………………………………………………………………7
教师管理模块………………………………………………………………8
学生管理模块………………………………………………………………10
课程管理模块………………………………………………………………18
成绩管理模块………………………………………………………………20
班级管理模块………………………………………………………………22
退出管理……………………………………………………………………24
                                                        2009-12-9
正文
正文内容如下:
一、 系统功能分析
功能分析:学生信息管理系统属应用系统。系统是一个集成多功能的信息管理系统,有教师资料管理、学生管理、班级管理、专业管理、课程管理、成绩管理和院系管理功能模块。
系统将大大提高学生信息的管理效率,带来数据共享、网络查询和网络管理等便利,实现学生信息管理的数字化和智能化。
1. 模块划分(整个系统功能结构图)
2. 各模块功能简介
登录模块:本模块主要为用户登录,权限验证,管理员添加,实现系统的多用户管理功能,不同权限的用户,可对其进行不同功能的管理。
教师管理模块:本模块主要对教师的资料信息进行查询,删除,修改和添加。
学生管理模块:本模块主要对信息进行相应的查询,删除,修改和添加。添加了学生所在院系资料与学生所在专业资料,同时可对院系资料与专业资料进行相应的添加,修改,查询。
课程管理模块:本模块主要对课程资料进行管理,对其进行查询,添加,修改和删除。又详细划分了课程类别资料,对其进行如上操作。
成绩管理模块:本模块对学生成绩进行查询操作,如发现成绩有输入错误,可对其进行相应的修改,还可对学生的成绩进行录入‘
班级管理模块:本模块班级资料信息进行管理,对其进行相应的查询,修改,删除和添加。
二、 数据库设计
注册页面js特效根据学生管理系统所要求的数据信息,创建数据库SMSStudent ,根据各模块可创建如下10个数据表,其字段名,数据类型等内容如下:
1. 各表及字段
Class 表:
Course 表:
Coursetype 表:
Department 表:
Grade 表:
Speciality 表:
Speciality_course 表:
Student 表:
Teacher 表:
Users 表:
添加:class_stu_view 视图表。
2. 系统中模块使用的存储过程
本数据库共创建3处存储过程,其存储过程为:
教师资料查询(teacher.aspx页面)
Employess_Sel 存储过程:
CREATE PROCEDURE [dbo].[Employess_Sel]
@lastname nvarchar (20),
@department varchar (30)
AS
select teacherid,teachername,department.departmentid,department.departmentname,sex,telephone from teacher,department where teacher.departmentid=department.departmentid and ( teachername like '%' + @lastname + '%' and department.departmentname=@department)
查询(student.aspx页面)
Student_Sel 存储过程:
CREATE PROCEDURE [dbo].[Student_Sel]
@lastname nvarchar (20),
@department varchar (30),
@studentid varchar(10)
AS
select * from [student],[class] where student.classid=class.classid and (( studentname like '%' + @lastname + '%'  or studentid=@studentid ) and class.classname=@department)
管理员添加(register.aspx页面)
procAdmin 存储过程:
CREATE procedure [dbo].[procAdmin]
@Auser char(10),
@Apwd varchar(50),
@Atype varchar(20)
AS
insert into users(username,mypassword,usertype) values(@Auser,@Apwd,@Atype)
三、各模块页面设计,具体功能实现
1.  学生信息管理系统总括:
开发环境:Microsoft Visual Studio 2005
开发语言:C#,JavaScript
数据库:  Microsoft SQL Server 2005
辅助工具:Adobe Photoshop CS2,Dreamweaver MX 2004
整体页面架构: 框架集(crm_admin_main.htm)(Width=763)
如上图所示
      四个框架内容文件:(top.htm, left.htm, switch.htm, body.htm)
1. top.htm页面:JavaScript 特效rain.js(详细代码见项目);
2. left.htm页面:JavaScript 级联菜单,全部由JavaScript生成,通过数组定义子菜单,可任意添加目录项与级联子项,程序可扩展性良好。
3. switch .htm页面:JavaScript 作开关按钮,实现框架的展开与合并功能。
4. body.htm页面:定位框架的主内容文件。(主要是aspx文件的定位:后面加xxx.aspx    target=’mainFrame’。例如:item_link[2][0]="student.aspx target='mainFrame'";)
注:本页面由Dreamweaver MX 2004实现,经JavaScript代码进行修改而成。
2.  全局配置文件:
数据库访问类connDB.cs
      public static SqlConnection createConn()
    {
                                                              string sms_connstr = System.Configuration.ConfigurationManager.ConnectionStrings["con"].ToString();
        SqlConnection conn = new SqlConnection(sms_connstr);
        return conn;
    }
3. Web.Config文件
配置信息:数据库连接字符串
<connectionStrings>
<add name="con" connectionString="server=(local);Initial Catalog=SMSStudent;Integrated Security=true" />
</connectionStrings>
4. Web.sitemap文件
配置整个站点的层次结构
以学生管理为例,站点地图代码如下:
<siteMapNode url="" title="主页"  description="">
    <siteMapNode url="" title="学生管理"  description="" >
      <siteMapNode url="~/student.aspx" title="学生信息管理"  description="" />
      <siteMapNode url="~/addstu.aspx" title="学生信息添加"  description="" />
    </siteMapNode>
    </siteMapNode>
</siteMap>
5.  SiteMapPath控件
  SiteMapPath控件数据内容由Web.sitemap文件自动导航
一、登录模块:
1. 用户注册页面(register.aspx) 如下图:
本页面可向系统注册管理员,通过身份验证获得整个系统的管理权限。注册是同过MD5加密算法对密码框(txtpwd.Text)进行加密。
调用加密算法:String str_pwd =
System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(this.mypassword.Text, "md5").ToString();
实现方法:首先定义 ExecuteInsert() 方法(代码详见项目),在点击添加按钮时调用,但在调用前必须判断该注册用户是否已存在或注册的用户和密码不能为空,代码如下;
string str_user = txtuser.Text;
        string str_sel = "select count(username) from users where username='" + str_user + "'";