77范文网 - 专业文章范例文档资料分享平台

项目实训-学生信息管理系统(6)

来源:网络收集 时间:2019-03-22 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

主菜单:数据查询 启动主窗体 子菜单:成绩信息查询 列示学生的成绩信息 成功 成绩查询窗体:输入学生学号 查询 数据验证 失败信息提示 图14.2.5-1:“学生成绩信息查询”功能流程图

(3)数据库设计

实现该功能计划采用带输出参数的存储过程来实现,否则我们需要进行两次数据库操作才能实现。为此,我们需要按照成绩信息查询操作的功能要求进行数据库设计。

首先,根据需要在stuInfoManage数据库中创建存储过程。该存储过程具有以下功能:可以根据输入参数学号,通过输出参数返回该学号所代表学生的姓名、性别和出生日期,同时通过存储过程返回该学生所修课程的成绩信息。

具体操作步骤如下:打开SQL Server 2000查询分析器输入以下代码并运行创建可以实现上所述功能的存储过程StuGradeQuery。

Use stuInfoManage

if exists (select * from sysobjects where name = StuGradeQuery and type = ‘P’)

drop procedure [dbo].[StuGradeQuery] GO

CREATE PROCEDURE StuGradeQuery (

26

C/S结构项目实训(C#语言版)

) as

@stuID varchar(12),

@stuName nvarchar(20) output, @stuSex nchar(1) output, @stuBirth varchar(12) output

select @stuName = stuName,@stuSex = stuSex,@stuBirth = convert(varchar(10),stuBirth,120) from stu where stuID=@stuID

select course.courseID as 课程编号,courseName as 课程名称,credit as 课程学分,grade as 成绩

from course inner join grade on course.courseID = grade.courseID where stuID = @stuID GO

至此,完成学生成绩查询所需的数据库设计任务完毕。 (4)界面设计

首先,在项目中添加一个Windows窗体类:StuGradeQueryForm,设置其Text属性为:学生成绩信息查询;然后在该窗体上添加以下控件并设置主要属性。具体控件及其主要属性设置参照表14.2.5-1说明。

控件类型 Label Label Label Label Label TextBox TextBox TextBox TextBox Button 控件名称 系统默认 系统默认 系统默认 系统默认 系统默认 StuIDInputTextBox StuNameTextBox StuSexTextBox StuBirthTextBox QueryButton 主要属性设置 Text:学生选修课程成绩查询 Text:查询学号输入: Text:姓名: Text:性别: Text:出生日期: 无 ReadOnly:true ReadOnly:true ReadOnly:true Text:查询 C/S结构项目实训(C#语言版) 27

DataGridView Panel GradeDataGridView 系统默认 无 无 表2.5-1:“学生成绩信息查询”窗体控件及其主要属性设置说明

此外为了美观效果,我们适当调整窗体和控件的其他属性(字体和颜色等)。具体的设计效果可以参照图2.5-2。

图14.2.5-2:“学生成绩查询”窗体设计效果图

(5)代码实现

5.1 菜单功能调用的实现

首先,在MainForm窗体类中添加StuGradeQueryForm窗体类的一个实例。 StuGradeQueryForm StuGradeInfoQueryForm = new StuGradeQueryForm(); 其次,在系统主菜单“数据查询”的“学生成绩信息查询”功能选项的Click事件中添加“学生成绩查询”窗体的功能调用代码。

if (StuGradeInfoQueryForm.IsDisposed) {

StuGradeInfoQueryForm = new StuGradeQueryForm();

C/S结构项目实训(C#语言版)

28

}

StuGradeInfoQueryForm.MdiParent = this; StuGradeInfoQueryForm.Show();

StuGradeInfoQueryForm.Focus(); 5.2 窗体功能的实现 ① 窗体状态的初始化

我们在窗体启动或查询失败时,需要清空界面所有控件的已有数据,故我们进行以下操作来实现该功能。

首先,在StuGradeQueryForm窗体类中添加以下私有方法设置控件属性。 private void CoverComponentReset() {

StuIDInputTextBox.Clear(); StuNameTextBox.Clear(); StuSexTextBox.Clear(); StuBirthTextBox.Clear();

GradeDataGridView.DataSource = \; StuIDInputTextBox.Focus(); }

其次,在StuGradeQueryForm窗体类的Load事件中调用CoverComponentReset方法对窗体控件进行初始化操作。

private void StuGradeQueryForm_Load(object sender, EventArgs e) {

CoverComponentReset();

}

② “查询”按钮功能的实现

在查询按钮中,我们需要根据数据库操作的结果进行操作选择:如果存在学号所代表的学生基本信息以及相关成绩信息,则直接列示;如果不存在,则提示相关信息并清除窗体界面的已有数据。实现该功能,我们需要在查询按钮的Click事件中添加以下代码:

private void QueryButton_Click(object sender, EventArgs e)

{

C/S结构项目实训(C#语言版)

29

string StuID = StuIDInputTextBox.Text.Trim(); SqlParameter[] cmdParam = new SqlParameter[]{

new SqlParameter(\,StuID),

new SqlParameter(\,SqlDbType.NVarChar,20), new SqlParameter(\,SqlDbType.NChar,1), new SqlParameter(\,SqlDbType.VarChar,12) };

cmdParam[1].Direction = ParameterDirection.Output; cmdParam[2].Direction = ParameterDirection.Output; cmdParam[3].Direction = ParameterDirection.Output; DataSet stuGradeDS =SqlHelper.ExecuteDataset(

SqlHelper.ConnectionString,CommandType.StoredProcedure,\y\,cmdParam);

if (!cmdParam[1].Value.ToString().Equals(\)) {

StuNameTextBox.Text = cmdParam[1].Value.ToString(); StuSexTextBox.Text = cmdParam[2].Value.ToString(); StuBirthTextBox.Text = cmdParam[3].Value.ToString();

GradeDataGridView.DataSource = stuGradeDS.Tables[0].DefaultView; GradeDataGridView.Columns[0].DataPropertyName = stuGradeDS.Tables[0].Columns[0].ToString(); GradeDataGridView.Columns[1].DataPropertyName = stuGradeDS.Tables[0].Columns[1].ToString(); GradeDataGridView.Columns[2].DataPropertyName = stuGradeDS.Tables[0].Columns[2].ToString(); GradeDataGridView.Columns[3].DataPropertyName = stuGradeDS.Tables[0].Columns[3].ToString(); } else

C/S结构项目实训(C#语言版)

30

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库项目实训-学生信息管理系统(6)在线全文阅读。

项目实训-学生信息管理系统(6).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/535874.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: