表3-10 Dorm(宿舍)宿舍信息表
列名 数据类型 宽度 允许空值 默认值 主键 说明
DormID char 7 否 主键 宿舍代码:
楼代码+约束
[0-9][0-9][0-9]
DormName char 10 否 宿舍名
LouID char 5 否 楼代码:外键,
宿舍楼信息表
TelePhone varchar 16 是 联系电话
grade(成绩)信息表结构,表名:t_grade
表3-11 grade(成绩)信息表结构
列名 数据类型 宽度 允许空值 默认值 主键 说明
StudentID char 11 否 主键 学号
CourseID char 8 否 主键 课程号
Grade tinyint 是 成绩
Speciality_Course(专业课程设置)表结构,表名:t_speciality_course
表3-12 Speciality_Course(专业课程设置)表结构
列名 数据类型 宽度 允许空值 默认值 主键 说明
SpecialityID char 5 否 主键 专业代码
CourseID char 8 否 主键 课程代码
TeacherID char 8 是 教师代码
Term tinyint 是 学期
Technical(教师职称)信息表结构,表名:t_teachnical
表3-13 Technical(教师职称)信息表结构
列名 数据类型 宽度 允许空值 默认值 主键 说明
TechnicalID char 3 否 主键 职称代码:
约束
TechnicalName varchar 16 否 职称名
注:约束1:[0-9][0-9][0-9]
3.3.3程序设计要求
视图,应用程序采用多文档界面风格,既能在一个主窗口中带开多个不同的窗口,用于完成不同的工作,并且能在各个窗口之间灵活的切换。
用户,应用程序登陆时,可以使用三种身份:管理员,其权限最大;教师,其权限次之;学生,其权限最小。
菜单,要求根据不同的用户加载不同的菜单:辅导员的菜单、教师的菜单、学生的菜单。
权限,无论是辅导员、教师、学生都没有权限修改、添加、删除数据库中得除密码以外的任何信息(教师信息、学生信息、公寓信息、成绩信息、课程信息等),数据的更新有教务数据库来管理。
数据库接口,数据库接口采用ODBC,即Open Datebase Connectivity 开放数据库互接,他是微软公司提出的开放式数据库互连的标准,它采用SQL(Structured Query Language,结构化查询语言)作为标准的查询语言来存取连接到的数据库。ODBC允许单个应用程序存取多个数据库管理系统,而不必关心所操纵的数据库管理系统是什么。
四系统实现
4.1环境要求
本系统采用的是SQL Server 2000数据库,它是对数据库进行操作的应用程序,因此需要有较好的配置。所需要的硬件配置如下:Pentium 800以上;10GB以上硬盘;不少于128MB内存。另外,开发工具PowerBuilder所需硬件配置如下: CELERON以上的CPU,128M以上的内存,10G以上的硬盘。
为了能够使本系统快速方便准确的操作,通过比较与权衡,本系统所采用的硬件配置如下:显示器一台(分辨率为800*600),硬盘为80G,内存为512M,CPU为Pentium 2.66G。软件配置如下:操作系统包括中文版 WinXP/Win2000/WinNT4/WinMe。
4.2开发工具的选择
由于SQL Server 2000是Microsoft公司中推出的普及性关系数据库系统,具有完备的的数据工具,其作为应用程序的后台仓库,即一个数据库可以包括多个二维表,实现各类数据的存储,适合用来作为数据处理的中间桥梁,便于系统今后的扩展,所以数据库的建立用的是SQL Server 2000[2]。
由于使用ODBC和微软的SQL Server 2000数据库接口。在数据库应用程序中,应用ODBC的 SQL Server数据库接口时,使编程方便,所以本软件采用了面向对象程序设计的思想,采用了PowerBuilder9.0中数据库开发的技术。在数据的存取方面,涉及到对表格的操作,使用了Grid和freedom数据控件[3],主要由于它是一款灵活、易用的数据控件,提供了足够的功能。
在软件界面的设计方面,主要使用PowerBuilder9.0,实现用户所要求的界面结构和功能。
4.3界面实现
用户运行该系统时,首先出现一个登陆窗口,提示用户选择用户类型,输入用户名和密码,输入正确进入系统主窗体。如图4-1~4-3所示。
图4-1学生主窗口
图4-2教师主窗口
图4-3辅导员主窗体
视图说明,用户登陆主窗体后,在主窗体中显示的是用户的个人基本信息,并且根据不同的用户加载在不同的菜单,在系统中有三种菜单:学生菜单(m_stuMenu)、教师菜单(m_teacMenu)和管理员的菜单(m_main)。
4.4系统模块实现
4.4.1个人成绩查询模块(学生)
SELECT t_students.studen