课程设计题目二学生信息管理系统.docVIP

课程设计题目二学生信息管理系统.doc

  1. 1、本文档共41页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

课程设计题目二学生信息管理系统

设计方法及代码

一、设计要求方法

创建一个学生信息管理系统,可以完成学生基本信息及成绩的输入、修改和查询。具体要求如下:

(一)建立“学生信息”数据库

1.建立数据库

利用MicrosoftAccess或VB中的“可视化数据管理器”建立数据库,名称为“Student.mdb”。

2.建立数据表

在Student.mdb数据库中建立5个表:

(1)学籍表

该表存放学生的基本信息,名称为“学籍”,结构如表3-1所示。

表3-1学籍表结构

字段名

类型

大小

说明

字段名

类型

大小

说明

学号

文本(Text)

20

主索引

出生日期

日期(Date)

姓名

文本(Text)

10

班级

文本(Text)

20

性别

文本(Text)

2

表中暂时存放一条记录,各字段均不应为空。

(2)成绩表

该表存放学生成绩,名称为“成绩”,结构如表3-2所示。

表3-2成绩表结构

字段名

类型

大小

学号

文本(Text)

20

课程

文本(Text)

20

分数

整型(Integer)

说明:

为减少数据冗余,成绩表中仅存储学号,不存储学生姓名,需要时根据学号从学籍表中获取姓名。

按照数据库设计规范,对“课程”亦应作类似处理。经过处理后,程序代码的编写量和难度均会明显增加。为了减轻初学者的编程负担,在成绩表中未对课程作规范化处理,而是直接存储课程名称。

(3)课程信息表

该表存放课程信息,名称为“课程信息”,结构如表3-3所示。

表3-3课程信息表结构

字段名

类型

大小

说明

课号

文本(Text)

10

主索引

课程

文本(Text)

20

说明:

基于前面所述的原因,在程序中没有将“课号”作为检索字段。

(4)用户表

该表存放用户登录信息,名称为“用户”,结构如表x-4所示。

表3-4用户表结构

字段名

类型

大小

说明

用户名

文本(Text)

16

主索引

密码

文本(Text)

16

权限

文本(Text)

10

表中暂时存放两条记录,内容如表3-5所示。

表3-5用户表内容

用户名

密码

权限

Admin

123456

管理员

User

123

普通

(5)临时表

该表作为临时工作表,名称为“临时”,用于输入成绩,结构如表3-6所示。

表3-6临时表结构

字段名

类型

大小

学号

文本(Text)

20

姓名

文本(Text)

10

分数

整型(Integer)

方法:

在数据库中设计“临时”表的目的是兼顾DataGrid控件的使用和减少数据冗余。

为了减少数据冗余,在“成绩”表中未包含学生姓名,而以“学号”与“学籍”表相关联。尽管这样做符合数据库设计规范,但是某些数据绑定控件的使用却因此而受到限制。例如,DataGrid控件以表格形式显示数据,具有较强的数据显示和编辑功能,可以进行成批数据的连续录入。令人遗憾的是,与DataGrid控件绑定的记录集必须使用客户端游标(CursorLocation=adUseClient),若记录集采用服务器端游标(adUseServer),该控件将无法显示数据。使用客户端游标的记录集在功能上有很多限制,对于多表查询来说,若所生成的记录集的输出字段来自两个或更多表,则不能进行更新操作;若查询虽然涉及多表,但输出字段仅来自其中一个表,修改更新操作不受影响。以下面的两条SQL语句为例:

①SELECT成绩.学号,学籍.姓名,成绩.课程,成绩.分数FROM成绩,学籍WHERE成绩.学号=学籍.学号

②SELECT成绩.学号,成绩.课程,成绩.分数FROM成绩,学籍WHERE成绩.学号=学籍.学号

语句①所选择的查询输出字段(SELECT语句)来自两个表,采用客户端游标生成记录集后可以在各种数据绑定控件中正常显示,但不能修改、更新数据。若在程序中执行更新操作,将出现如图3-2所示的错误提示。

图3-2错误信息

语句②的查询输出字段仅来自“成绩”表,尽管在查询条件(WHERE子句)中涉及两个表,但不影响更新操作。

为了充分发挥DataGrid控件的数据编辑功能,同时兼顾数据库设计规范,可以用一个临时工作表存放多表查询的结果,将多表操作转换为单表操作。数据流程如下:

多表查询→记录集→临时表→录入、修改→存入基本表。

(二)用户登录窗体

本窗体(frmLogin)作为系统的启动窗体,用于验证用户是否合法,运行时界面如图3-3所示。

图3-3用户登录

方法:

窗体上两个文本框分别用于输入用户名和密码,其中密码文本框的内容用“*”显示。

在窗体上添加一个ADO数据控件,设Visible=False,将其与数据库连接,用SQL语句将记录源与数据库中的“用户”表绑定。

单击“确定”按钮后,查询“用户”表中是否有相符的用

文档评论(0)

lookoudb + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档