数据库应用课程设计学生信息管理系统Word文档格式.docx
《数据库应用课程设计学生信息管理系统Word文档格式.docx》由会员分享,可在线阅读,更多相关《数据库应用课程设计学生信息管理系统Word文档格式.docx(26页珍藏版)》请在冰豆网上搜索。
2.5.2主要技术要点12
2.6院系资料13
2.6.1功能概述13
2.6.2主要技术要点13
2.7专业资料14
2.8课程管理模块设计15
2.8.1功能概述15
2.8.2主要技术要点15
2.8.3课程类别设计16
2.9成绩管理模块设计16
2.9.1成绩查询16
2.9.2成绩录入17
2.10用户管理模块18
2.10.1编辑用户资料18
2.10.2修改用户资料18
2.10.3添加新用户19
3系统运行截图20
1系统总体设计
1.1系统需求随着科学技术的发展,计算机管理在日常生活中的地位变得越来越重要。
它能够代替人做各种重复、繁琐的劳动,并且拥有操作简单,可信度好,不易出错等优点,大大减少了不必要的人力消耗,提高个人的工作效率。
学生信息管理是每个学校必须面临的问题,所以,如何开发一个应用简单,见面友好,容易操作,数据安全性好的管理系统就成为非常重要的技术问题。
我采用VisualStudio技术进行数据库开发可以使开发过程简单化,更快捷的访问数据库。
作为一个基于B/S模式的管理系统,需要记录大量的数据信息,而这些数据信息需要同时能够提供给使用人员查询和修改,必然需要一个大型的数据库系统和一台网络服务器,并且需要建立局域网或是能够被INTERNET网络用户访问。
对于客户机来说,他不需要存储数据,而只需要通过访问服务器,获得相应的服务。
1.2系统功能分析
系统开发的总体任务是实现学生信息关系的系统化、规范化和自动化。
系统功能分析是在系统开发的总体任务的基础上完成的。
本学生信息管理系统需要完成的功能有:
系统管理功能:
添加普通用户、添加管理员、退出系统。
教师管理功能:
添加教师信息、查询教师信息、修改教师信息、删除教师信息。
学生管理功能:
添加学生资料信息、修改学生资料信息、查看修改学生院系资料、学生专业资料。
课程管理功能:
课程信息浏览、添加课程几课程类别、修改课程资料。
成绩管理功能:
成绩信息浏览、添加成绩信息、修改成绩信息、查询成绩信息。
班级管理功能:
班级资料查询、添加、修改。
1.3系统运行环境
硬件平台:
cpu:
p41.8GHZ
内存:
256MB
软件平台:
数据库:
SQLSERVER2000
开发工具:
PowerBuilder9.0
2系统模块设计
2.1数据库整体设计
2.1.1数据库设计数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率以及实现的效果产生影响。
合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。
同时,合理的数据库结构也将有利于程序的实现。
设计数据库时应该首先充分了解用户各个方面的需求,包括现有的以及将来可能增加的需求。
2.1.2数据库需求分析
用户的需要具体体现在各种信息的提供、保存、更新和查询,这就要求数据库结构能充分满足各种信息的输入和输出。
收集数据、数据结构以及处理数据的流程,可以为以后的设计打下基础。
图2-1系统数据流程图
2.1.3数据库逻辑结构设计
图2-2系统功能模块图
在数据库中建立表格,为了系统的安全,有必要建立一个登录页面,所以在数据库中还应建立一个密码表。
各个表的具体设计:
密码表(users):
字段名称
数据类型
备注
username
Char(10)
用户名
mypassword
Varchar(50)
用户密码
usetype
用户类型
学生信息表(student):
StudentID
学生学号
StudentName
学生姓名
nation
籍贯
sex
性别
birthday
datetime
生日
ClassID
班级编号
telephone
电话
address
家庭地址
remark
老师信息表(teacher):
teacherID
老师编号
teacherName
老师姓名
departmentID
学院编号
technicalPost
职称
homeAddr
rematk
班级信息表(class):
classID
className
班级名字
specialityID
专业编号
specialityName
专业名字
enteanceYear
入学时间
MonitorID
班长学号
课程信息表(course):
courseID
课程编号
coursename
课程名字
coursetypeID
课程类型编号
totalperiod
Tinyint
(1)
总学时
weekperiod
周学时
credithour
学分
成绩信息表(garde)
studentID
grade
分数
课程类别信息表(coursetype):
typename
类型名字
学生专业信息表(speciality):
学院信息表(department):
DepartmentID
DepatmentName
学院名字
departmentHead
院主任
2.2应用系统的对象
在应用程序对象的Open事件中输入如下代码:
//从配置参数文件中读取连接数据库所需的参数
//ProfileSMSstudent
SQLCA.DBMS="
MSSMicrosoftSQLServer"
SQLCA.Database="
SMSstudent"
SQLCA.LogPass="
88888888"
SQLCA.ServerName="
G-PC"
SQLCA.LogId="
sa"
SQLCA.AutoCommit=False
SQLCA.DBParm="
"
//连接数据库
ConnectUsingSQLCA;
IfSQLCA.SQLCODE<
>
0THEN
messagebox("
数据库连接出错"
SQLCA.SQLerrtext)
else
open(w_login)
endif
应用程序运行后直接连接数据库直至数据库连接成功.在应用程序对象的变量定义窗口中,定义全局变量stringgs_username,gs_usertype,gs_mypassword用于应用程序不同对象间参数的传递。
2.3登陆模块
2.3.1功能概述
为了系统的安全,在进入系统之前首先会出现一个登录模块,用户只有在输入正确的用户名和正确的密码之后,才能进入系统。
用户登录页面用来输入用户名和密码。
图2-3用户登陆窗口
图2-4登陆页面流程图
用户登录系统窗口的是用户和管理员进入系统的唯一通道,它是进入应用系统的喉舌,在安全保密、系统维护中占有重要的地位,登录系统在外观界面上一定要美观、友好,登录系统就是要验证当前的用户名是否与该用户密码一致,保留登录痕迹等工作。
2.3.2主要技术要点
保留登录痕迹:
根据操作局部性原理,一般情况下用户上次登录之后还会继续登录,因此在程序中可以依照人机交互界面友好性原则保留用户登录时的用户名,控件sle_1用来显示用户名,profilestring是一个函数,用来读取profile文件中一组参数,核心代码如下:
sle_1.text=profilestring("
publish.ini"
"
user"
username"
)
iftrim(sle_1.text)<
then
sle_2.setfocus()
2.4学生管理模块
2.4.1功能概述
学生管理模块可以查看学生的学号、姓名、性别、出生日期、电话等学生的基本信息,并能进行添加、修改和删除。
在新增状态可以添加新的学生基本信息。
设计时我尽可能设想各种边界条件,如记录为空,输入为空,输入出错等,当输入的信息满足这些边界条件时,将会弹出一个提示框提醒用户,以便用户能及时地做出修改。
添加的信息将全部存储到数据库中。
图2-5学生信息窗口
2.4.2主要技术要点
(1)显示数据窗口选中的数据到相应的编辑框
由于数据窗口是不允许数据进行直接修改,因此首先选中数据双击鼠标到相应的编辑框,再进行修改。
核心代码如下ifrow>
0then
sle_1.text=dw_1.object.sid[row]
……
gb_2.text="
修改"
(2)数据库插入、修改及删除数据
运用数据库的INSERT、UPDATE及DELETE子句进行操作。
首先通过dw_1.GetItemString、dw_1.GetItemNumber等函数读出数据窗口对象一一对应放置数据库中位置。
核心代码如下:
selectstudentIDinto:
li_idfromstudent
wherestudentID=:
li_id;
ifgb_2.text="
新增"
ifSQLCA.SQLCODE=0then
messagebox("
提示"
学号重复"
endif
INSERTINTOstudent(studentID,……)
VALUES(:
sle_1.text,……);
else