学生成绩管理系统实验报告-2_第1页
学生成绩管理系统实验报告-2_第2页
学生成绩管理系统实验报告-2_第3页
学生成绩管理系统实验报告-2_第4页
学生成绩管理系统实验报告-2_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数据库系统原理实验报告实验名称学生成绩管理系统院系计算机与信息工程学院班级2013级计算机科学与技术二班姓名郅伟远学号1308114088实验课程名称数据库系统原理实验项目名称学生成绩管理系统实验项目性质综合性主讲教师孟慧丽开课年级2013开课专业计算机实验地点过街楼开课日期开课时间学号姓名1308114088郅伟远一、实验目的:熟悉并掌握数据库系统原理这门课所应用的软件SQLServer2008,以及使用该软件的相关要求与具体用法。在掌握SQLServer2008应用的基础上,建立相关学生成绩管理信息的数据库,并在此基础上与VisualStudio.NET2008建立连接,进行相关的操作。在VisualStudio.NET2008上进行学生成绩管理信息系统的查询、更改以及成绩录入的相关界面的设计,使流程能够顺利进行。二、总体设计(设计原理、设计方案及流程等)设计原理:1、以SQLServer2008软件的功能与作用为基础。2、以VisualStudio.NET2008软件的功能为平台。设计方案及流程:以VisualStudio.NET2008为前台开发工具进行操作,并以SQLServer2008软件为后台,使创建成功的一个学生成绩管理系统具有如下基本功能:1、学生信息查询,可根据学号,姓名及专业分别进行学生信息查询。2、学生信息修改,可在数据库中插入,删除,修改学生记录3、学生成绩录入,可录入每个学生某门课程成绩。在此基础的操作中上能够添加个人的信息,如添加个人的学号,姓名,专业和成绩等,并能够执行查询个人相关信息的操作。三、实验步骤(包括主要步骤、代码分析等)主要步骤及相应的代码:在SQLServer2008条件下以ID=sa,password=123456的身份进入数据库引擎,并将PXSCJ附加到数据库。打开VisualStudio.NET2008,将已有的数据库PXSCJ与VS2008建立连接。在VisualStudio.NET2008环境下,建立Windows窗体并命名为Form1,并添加相应的程序代码,同时需要添加相关联的子窗体分别双击窗体,双击3个botton按钮,添加相应的程序代码:privatevoidbutton1_Click(objectsender,EventArgse){//建立学生信息查询窗体SearchFormsearchfrm=newSearchForm();searchfrm.ShowDialog();}privatevoidbutton2_Click(objectsender,EventArgse){//建立学生信息修改窗体ModifyFormmodifyfrm=newModifyForm();modifyfrm.ShowDialog();}privatevoidbutton3_Click(objectsender,EventArgse){//建立学生信息录入窗体ScoreFormscorefrm=newScoreForm();scorefrm.ShowDialog();}在窗体SearchForm上添加相应的控件,修改相应控件的添加控件,合理设计此界面控件的基础上,双击各个相应的控件,添加相应的程序代码:privatestringsql="";privatevoidSearchForm_Load(objectsender,EventArgse){stringconnStr=@"DataSource=C56;InitialCatalog=G:\数据库系统\PXSCJ\PXSCJ.MDF;UserID=sa;Password=123456";string_sql="selectXHas'学号',XMas'姓名',ZYas'专业',XBas'性别',"+"CSSJas'出生日期',ZXFas'总学分',BZas'备注'fromXSB";SqlConnectionconn=newSqlConnection(connStr);SqlDataAdaptersda=newSqlDataAdapter(_sql,conn);DataSetds=newDataSet();sda.Fill(ds);StuDGV.DataSource=ds.Tables[0].DefaultView;}privatevoidMakeSqlStr(){sql="";if(stuXH.Text.Trim()!=string.Empty){sql="andXHlike'%"+stuXH.Text.Trim()+"%'";}if(stuXM.Text.Trim()!=string.Empty){sql+="andXMlike'%"+stuXM.Text.Trim()+"%'";}if(stuZY.Text!="所有专业"){sql+="andZY='"+stuZY.Text+"'";}}privatevoidbutton1_Click(objectsender,EventArgse){MakeSqlStr();stringconnStr=@"DataSource=C56;InitialCatalog=G:\数据库系统\PXSCJ\PXSCJ.MDF;UserID=sa;Password=123456";string_sql="selectXHas'学号',XMas'姓名',ZYas'专业',XBas'性别',"+"CSSJas'出生日期',ZXFas'总学分',BZas'备注'fromXSBwhere1=1"+sql;SqlConnectionconn=newSqlConnection(connStr);SqlDataAdaptersda=newSqlDataAdapter(_sql,conn);DataSetds=newDataSet();sda.Fill(ds);StuDGV.DataSource=ds.Tables[0].DefaultView;}在窗体ModifyForm上添加相应的控件:在工具箱中合理的将控件摆放在窗体上,双击相应的控件,并添加相应的代码:privatevoidModifyForm_Load(objectsender,EventArgse){stringconnStr=@"DataSource=c56;InitialCatalog=G:\数据库系统\PXSCJ\PXSCJ.MDF;PersistSecurityInfo=True;UserID=sa;Password=123456";string_sql="selectXHas'学号',XMas'姓名',ZYas'专业',XBas'性别',"+"CSSJas'出生年月',ZXFas'总学分',BZas'备注'fromXSB";SqlConnectionconn=newSqlConnection(connStr);SqlDataAdaptersda=newSqlDataAdapter(_sql,conn);DataSetds=newDataSet();sda.Fill(ds);StuDGV.DataSource=ds.Tables[0].DefaultView;}privatevoidstuDelete_Click(objectsender,EventArgse){stringconnStr=@"DataSource=c56;InitialCatalog=G:\数据库系统\PXSCJ\PXSCJ.MDF;PersistSecurityInfo=True;UserID=sa;Password=123456";DialogResultret=MessageBox.Show("确定要删除记录吗?","删除",MessageBoxButtons.OKCancel,MessageBoxIcon.Question);if(ret==DialogResult.Cancel)return;string_sql="deletefromXSBwhereXH='"+stuXH2.Text+"'";SqlConnectionconn=newSqlConnection(connStr);SqlCommandcmd=newSqlCommand(_sql,conn);try{conn.Open();introws=cmd.ExecuteNonQuery();ModifyForm_Load(null,null);if(rows==1){MessageBox.Show("删除成功!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information);}}finally{conn.Close();}}privatevoidstuUpdate_Click(objectsender,EventArgse){stringconnStr=@"DataSource=c56;InitialCatalog=G:\数据库系统\PXSCJ\PXSCJ.MDF;PersistSecurityInfo=True;UserID=sa;Password=123456";string_sql="selectcount(*)fromXSBwhereXH='"+stuXH2.Text+"'";SqlConnectionconn=newSqlConnection(connStr);SqlCommandcmd=newSqlCommand(_sql,conn);try{conn.Open();intcnt=(int)cmd.ExecuteScalar();if(cnt==1){_sql="updateXSBsetXM='"+stuXM2.Text+"',ZY='"+stuZY2.Text+"',ZXF="+int.Parse(stuZXF2.Text)+",BZ='"+stuBZ.Text+"'whereXH='"+stuXH2.Text+"'";}else{stringsex=male.Checked?"男":"女";_sql="insertintoXSB(XH,XM,ZY,ZXF)values('"+stuXH2.Text+"','"+stuXM2.Text+"','"+stuZY2.Text+"',"+int.Parse(stuZXF2.Text)+")";}cmd=newSqlCommand(_sql,conn);cmd.ExecuteNonQuery();ModifyForm_Load(null,null);}finally{conn.Close();}}privatevoidstuCancel_Click(objectsender,EventArgse){this.Close();}privatevoidStuDGV_RowHeaderMouseClick_1(objectsender,DataGridViewCellMouseEventArgse){DataGridViewRowdgvRow=StuDGV.Rows[e.RowIndex];DataGridViewCellCollectiondgvCC=dgvRow.Cells;stuXH2.Text=dgvCC[0].Value.ToString();stuXM2.Text=dgvCC[1].Value.ToString();stuZY2.Text=dgvCC[2].Value.ToString();if(dgvCC[3].Value.ToString()=="男")male.Checked=true;elsefemale.Checked=true;stuCSSJ2.Text=Convert.ToDateTime(dgvCC[4].Value).ToShortTimeString();stuZXF2.Text=dgvCC[5].Value.ToString();stuBZ.Text=dgvCC[6].Value.ToString();}在窗体ScoreForm上添加相应的控件:添加1个Lable控件,并将Text改为“学生成绩录入”;拖拽6个Lable控件,将其属性Text分别设置为“姓名,成绩,课程名”;合理的将控件摆放在窗体上,双击相应的控件,并添加相应的代码:privatevoidScoreForm_Load(objectsender,EventArgse){stringconnStr=@"DataSource=C56;InitialCatalog=G:\数据库系统\PXSCJ\PXSCJ.MDF;UserID=sa;Password=123456";string_sql="selectdistinctZYfromXSB";SqlConnectionconn=newSqlConnection(connStr);SqlCommandcmd=newSqlCommand(_sql,conn);try{conn.Open();SqlDataReaderdr=cmd.ExecuteReader();//读取专业名while(dr.Read()){stuZY3.Items.Add(dr[0]);}dr.Close();_sql="selectKCMfromKCB";cmd=newSqlCommand(_sql,conn);dr=cmd.ExecuteReader();//读取课程名while(dr.Read()){stuKCM3.Items.Add(dr[0]);}dr.Close();}finally{conn.Close();}}privatevoidupdate_btn_Click(objectsender,EventArgse){stringconnStr=@"DataSource=C56;InitialCatalog=G:\数据库系统\PXSCJ\PXSCJ.MDF;UserID=sa;Password=123456";string_sql="selectcount(*)fromCJBwhereCJB.XH='"+stuXH3.Text+"'andCJB.KCH=(selectKCHfromKCBwhereKCM='"+stuKCM3.Text.Trim()+"')";SqlConnectionconn=newSqlConnection(connStr);SqlCommandcmd=newSqlCommand(_sql,conn);try{conn.Open();intcnt=(int)cmd.ExecuteScalar();if(cnt==1){_sql="updateCJBsetCJB.CJ='"+stuCJ3.Text+"'whereCJB.XH='"+stuXH3.Text+"'andCJB.KCH=(selectKCHfromKCBwhereKCM='"+stuKCM3.Text+"')";}else{string_sql2="selectKCHfromKCBwhereKCM='"+stuKCM3.Text+"'";SqlCommandcmd2=newSqlCommand(_sql2,conn);_sql="insertintoCJBvalues('"+stuXH3.Text.Trim()+"',"+cmd2.ExecuteScalar()+","+int.Parse(stuCJ3.Text.Trim())+")";}cmd=newSqlCommand(_sql,conn);cmd.ExecuteNonQuery();_sql="selectXSB.XHas'学号',XSB.XMas'姓名',KCB.KCMas'课程名',CJB.CJas'成绩',KCB.XFas'学分',KCB.XSas'学时',KCB.KKXQas'开课学期'fromXSB,KCB,CJBwhereXSB.XH=CJB.XHandKCB.KCH=CJB.KCHandKCB.KCM='"+stuKCM3.Text+"'"+"andXSB.XH='"+stuXH3.Text+"'";SqlDataAdaptersda=newSqlDataAdapter(_sql,conn);DataSetds=newDataSet();sda.Fill(ds);scoreDGV.DataSource=ds.Tables[0].DefaultView;}finally{conn.Close();}}privatevoiddelete_btn_Click(objectsender,EventArgse){stringconnStr=@"DataSource=C56;InitialCatalog=G:\数据库系统\PXSCJ\PXSCJ.MDF;UserID=sa;Password=123456";DialogResultret=MessageBox.Show("确定要删除记录吗?","删除",MessageBoxButtons.OKCancel,MessageBoxIcon.Question);if(ret==DialogResult.Cancel){return;}string_sql="deletefromCJBwhereXH='"+stuXH3.Text.Trim()+"'andKCH=(selectKCHfromKCBwhereKCM='"+stuKCM3.Text.Trim()+"')";SqlConnectionconn=newSqlConnection(connStr);SqlCommandcmd=newSqlCommand(_sql,conn);try{conn.Open();introws=cmd.ExecuteNonQuery();if(rows==1){MessageBox.Show("删除成功!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information);}}finally{conn.Close();}}privatevoidcancel_btn_Click(objectsender,EventArgse){this.Close();}privatevoidstuZY3_SelectedIndexChanged(objectsender,EventArgse){stringconnStr=@"DataSource=C56;InitialCatalog=G:\数据库系统\PXSCJ\PXSCJ.MDF;UserID=sa;Password=123456";string_sql="selectXHfromXSBwhereZY='"+stuZY3.Text+"'";//清空现有的学号stuXH3.Items.Clear();SqlConnectionconn=newSqlConnection(connStr);SqlCommandcmd=newSqlCommand(_sql,conn);try{conn.Open();SqlDataReaderdr=cmd.ExecuteReader();//读取相应的学号while(dr.Read()){stuXH3.Items.Add(dr[0]);}dr.Close();_sql="selectXSB.XHas'学号',XSB.XMas'姓名',KCB.KCMas'课程名',CJB.CJas'成绩',"+"KCB.XFas'学分',KCB.XSas'学时',KCB.KKXQas'开课学期'fromXSB,KCB,CJBwhereXSB.XH=CJB.XHandKCB.KCH=CJB.KCHandXSB.ZY='"+stuZY3.Text+"'";SqlDataAdaptersda=newSqlDataAdapter(_sql,conn);DataSetds=newDataSet();sda.Fill(ds);scoreDGV.DataSource=ds.Tables[0].DefaultView;}finally{conn.Close();}}privatevoidstuXH3_SelectedIndexChanged(objectsender,EventArgse){stringconnStr=@"DataSource=C56;InitialCatalog=G:\数据库系统\PXSCJ\PXSCJ.MDF;UserID=sa;Password=123456";string_sql="selectXSB.XHas'学号',XSB.XMas'姓名',KCB.KCMas'课程名',CJB.CJas'成绩',KCB.XFas'学分',KCB.XSas'学时',KCB.KKXQas'开课学期'fromXSB,KCB,CJBwhereXSB.XH=CJB.XHandKCB.KCH=CJB.KCHandXSB.XH='"+stuXH3.Text+"'";if(stuKCM3.Text.Trim()!=string.Empty){_sql+="andKCB.KCM='"+stuKCM3.Text+"";}SqlConnectionconn=newSqlConnection(connStr);SqlDataAdaptersda=newSqlDataAdapter(_sql,conn);DataSetds=newDataSet();sda.Fill(ds);scoreDGV.DataSource=ds.Tables[0].DefaultView;

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论