c#实习报告.docx

上传人:b****3 文档编号:10345827 上传时间:2023-05-25 格式:DOCX 页数:32 大小:304.94KB
下载 相关 举报
c#实习报告.docx_第1页
第1页 / 共32页
c#实习报告.docx_第2页
第2页 / 共32页
c#实习报告.docx_第3页
第3页 / 共32页
c#实习报告.docx_第4页
第4页 / 共32页
c#实习报告.docx_第5页
第5页 / 共32页
c#实习报告.docx_第6页
第6页 / 共32页
c#实习报告.docx_第7页
第7页 / 共32页
c#实习报告.docx_第8页
第8页 / 共32页
c#实习报告.docx_第9页
第9页 / 共32页
c#实习报告.docx_第10页
第10页 / 共32页
c#实习报告.docx_第11页
第11页 / 共32页
c#实习报告.docx_第12页
第12页 / 共32页
c#实习报告.docx_第13页
第13页 / 共32页
c#实习报告.docx_第14页
第14页 / 共32页
c#实习报告.docx_第15页
第15页 / 共32页
c#实习报告.docx_第16页
第16页 / 共32页
c#实习报告.docx_第17页
第17页 / 共32页
c#实习报告.docx_第18页
第18页 / 共32页
c#实习报告.docx_第19页
第19页 / 共32页
c#实习报告.docx_第20页
第20页 / 共32页
亲,该文档总共32页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

c#实习报告.docx

《c#实习报告.docx》由会员分享,可在线阅读,更多相关《c#实习报告.docx(32页珍藏版)》请在冰点文库上搜索。

c#实习报告.docx

c#实习报告

c#课程实习报告

 

实习题目名称:

学生公寓管理系统

班级序号:

111102-18

学生姓名:

代彦宾

********************

 

中国地质大学信息工程学院软件工程系

2012年7月

 

C#课程实习报告

一、实习目的及要求

实习目的:

开发学生公寓管理系统,主要包括基于数据库开发和前期的C#应用程序开发两个方面,选择这个题目,主要是为了更好的运用数据库开发的知识和提高所学编程语言开发能力。

要求:

在数据库开发方面,要求后台数据库的建立和维护数据一致性和完整性强。

对于前端应用程序的开发,要求程序能提供强大的数据操作功能,界面友好,使用简单等。

二、实习选题的背景及目标

背景:

在本校的学生公寓管理中,由于扩招,本校的学生人数剧增,传统的管理方式已经不能适合高校宿舍管理的需要,因此需要一个功能完善,操作方便的宿舍管理信息系统。

而该系统应该包含学生公寓管理的基本功能:

学生管理、公寓相关工作管理等。

学生公寓管理系统是应对学生宿舍管理的网络化,逐步摆脱寝室管理的人工管理方式,提高学生宿舍管理效率而开发的。

目前,我们学校的宿舍管理还是人工管理方式。

数据信息仍以文本方式保存。

针对这一情况,我们设计了学生公寓管理系统。

目标:

该学生公寓管理系统设计完毕后,经运行,可完善的展现学生宿舍信息。

提高学生宿舍管理员的工作效率。

方便同学及其他老师。

届时,该系统有以下信息:

楼房管理:

楼房信息、房间信息、住户信息等。

住宿管理:

实现用户登陆;实现匿名用户院系,专业,姓名、宿舍号等查询和组合查询功能;实现管理员对院系、专业、学生的添加、修改、删除;实现按院系,专业,姓名等统计功能。

来访人员管理:

实现登记信息。

自行车管理:

内容略。

维修管理:

内容略。

该系统运行成功后能准确无误的反应学生公寓信息,能进行学生公寓各方面的管理。

用户界面美观,对用户来讲,操作简单。

三、实习设计方案

根据题目的要求,该系统主要包括住宿管理,来访人员管理,自行车管理,维修管理等。

整个程序的设计,就按照这几个管理系统来展开。

分别设计这些管理系统,建立相应的数据库。

整体设计方案如下:

 

四、实习开发及实验描述

本程序的开发是在win7环境下进行,本系统后台数据库采用access,前台采用vc#作为主要开发工具。

采用ADO技术连接数据库,完成对数据库的一系列操作。

总体上,按照如下步骤进行程序设计。

用户(管理员)首先输入自己的帐号密码。

当帐号和密码对应正确后,方可进入系统进行操作。

用户可在弹出的界面内选择操作。

可以进行组合查询。

程序开发主要开发学生信息和管理员添加信息,维修信息。

在数据库中添加各类信息。

登陆账号和密码:

学生部分信息:

部分宿舍信息:

部分宿舍楼:

维修信息:

本题所建数据库的E-R图:

3.4数据字典

数据项名

数据项含义

数据说明

数据类型

别名

StuNo

学生编号

char(8)

学号

StuName

学生姓名

char(8)

姓名

Sex

学生性别

char

(2)

性别

Address

学生家乡

char(10)

祖籍

StuProfess

学生所在专业

char(20)

专业

StuClass

学生所在班级编号

Char(8)

班级

RNo

宿舍编号

char(6)

宿舍号

ROne

宿舍学生信息

等于StuName

char(8)

舍员1

RTwo

宿舍学生信息

等于StuName

char(8)

舍员2

RThree

宿舍学生信息

等于StuName

char(8)

舍员3

RProfess

宿舍学生所学专业

等于StuProfess

char(20)

专业

RClass

学生所在班级编号

等于StuClass

char(8)

班级

DorNo

宿舍楼编号

int

宿舍楼号

DorAdminist

宿舍楼楼管员信息

等于WorNo

char(10)

楼管员

WorNo

楼管编号

char(8)

编号

WorName

楼管姓名

char(8)

姓名

五、实习的结果与讨论

[给出本次实习的结果和发现,若有必要还需进行讨论:

说明所得到的结果是否达到预期目标,对结果提出说明、解释或猜测,给出实验的局限性以及这些限制对结果的影响等。

给出开发中遇到的问题及解决办法,程序中待解决的问题及改进方向]

登陆信息实现结果:

在数据库中,规定了几个相对应的帐号和密码。

 

登录成功后的主界面:

可以选择报修信息,会弹出如下界面:

 

也可以修改学生信息:

可以增加学生信息:

六、实习总结

经过将近半个月的时间,本设计终于完成了。

本设计对学生宿舍管理工作进行了提炼和概括,大大减少了宿舍管理员的劳动,是学校管理的得力助手。

本系统实现了在全校范围内查找一名学生所在公寓的功能,只需要通过查询方法,输入该学生的学号或者姓名,就可以很容易地找到他的所在公寓,同时也可以了解他的一些基本信息,看所查找的对象是否是自己要找的人。

也可以增添学生信息,修改学生信息。

也可以报修。

但,这个系统不是很大、简单、功能不完善。

回头看该系统,有很多地方都不完善。

比如来访人员管理,自行车管理这两个主要功能没有实现。

细节之处,像修改密码等功能也未实现。

在本次实习中,我发现自己的编程开发能力有待提高,数据库方面的知识也有待复习巩固。

 

参考文献:

参考如下格式列出本次实习所参考的论文、资料的目录

[1]萨师煊,王珊.数据库系统概论[M].北京:

高等教育出版社,1983.7.2-5.

[2]李志敏,黄静.《C#高级编程第4版》[M].北京:

清华大学出版社,2007.9:

45-225

[3]王云鹏.C#新手开发实战演练[M].北京:

中国铁道出版社,2009:

300-450

[4]李佳,付强,丁宁等.C#开发技术大全[M].北京:

清华大学出版社,2009.6.1-3

[5]陈弟.C#程序开发范例宝典[M]..北京:

人民邮电,2007-09.8.6-9

[6]王小科,梁冰,吕双.C#开发典型模块大全[M].北京:

人民邮电出版社,2009:

236

[7]王院峰,陈静.C#3.0实例精通[M].北京:

机械工业出版社,2009:

112-225

[8]李雁翎.数据库技术及其应用——Access[M].北京:

高等教育出版社,2006.9

[9]黄明.Access信息管理系统开发实例导航[M].北京:

人民邮电出版社,2005:

18-100

[10]庄士钦.高等学校学生宿舍管理[M].北京:

北京邮电大学出版社,1989.3.5-5

[11]张耀军,吴海燕,胡洋,.基于delphi的C/S结构高校学生宿舍管理系统[J].中国西部科技,2009,(15).

[12]李向阳,.基于C#的塔里木大学宿舍管理系统的构建[J].农业网络信息,2009,

(2)

附件:

程序主要源代码和/或图表

连接数据库:

publicclassDBHelper

{

privatestaticstringconnStr=@"DataSource=.\C:

\Users\DELL\Desktop\宿舍.mdb";

publicstaticSqlConnectionconnection=newSqlConnection(connStr);

//OleDbConnectionconn=newOleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;DataSource=C:

\\Users\\DELL\\Desktop\\宿舍.mdbb");//连接数据库

 

publicDBHelper(){

StringstrConnection="Provider=Microsoft.Jet.OleDb.4.0;";//strConnection存放的是连接数据库所需要的连接字符串,他指定了要使用的数据提供者和要使用的数据源.

strConnection+=@"DataSource=C:

\Users\DELL\Desktop\宿舍.mdb";

OleDbConnectionobjConnection=newOleDbConnection(strConnection);

objConnection.Open();

objConnection.Close();

}

登陆界面代码:

publicpartialclassForm1:

Form

{

publicForm1()

{

InitializeComponent();

}

学生公寓管理a=new学生公寓管理();

privatevoidForm1_Load(objectsender,EventArgse)

{

cboType.Items.Add("管理员");

cboType.SelectedIndex=0;

}

privatevoidbutton2_Click(objectsender,EventArgse)//取消按钮

{

Application.Exit();

}

privatevoidbutton1_Click(objectsender,EventArgse)//登陆按钮

{

StringstrConnection="Provider=Microsoft.Jet.OleDb.4.0;";strConnection+=@"DataSource=C:

\Users\DELL\Desktop\宿舍.mdb";

OleDbConnectionobjConnection=newOleDbConnection(strConnection);

objConnection.Open();

objConnection.Close();

if(ValidateInput())

{

stringmessage="";//调用ValidateUser()方法判断用户是否存在

boolisUser=ValidateUser(txtLoginId.Text,txtLoginPwd.Text,cboType.Text,refmessage);

if(isUser)

{

UserHelper.loginId=txtLoginId.Text.Trim();

UserHelper.loginPassword=txtLoginPwd.Text.Trim();

//UserHelper.loginType="";

this.Visible=false;//隐藏登陆窗口

}

else

{

MessageBox.Show(message);

}

}

}

privateboolValidateInput()

{

if(txtLoginId.Text=="")

{

MessageBox.Show("请输入登录号码!

");

txtLoginId.Focus();

returnfalse;

}

elseif(txtLoginPwd.Text=="")

{

MessageBox.Show("请输入密码!

");

txtLoginPwd.Focus();

returnfalse;

}

else

{

returntrue;

}

}

privateboolValidateUser(stringloginId,stringloginpwd,stringtype,refstringmessage)

{

boolisUser=false;

stringsql="";//根据用户类型定义sql语句

if(cboType.Text=="管理员")

{

sql=string.Format("select*fromDormAdminwhereLoginId='{0}'andLoginPwd='{1}'",txtLoginId.Text.Trim(),txtLoginPwd.Text.Trim());

//if(UserHelper.loginId=="sa"&&UserHelper.loginPassword=="sa")

 

}

StringstrConnection="Provider=Microsoft.Jet.OleDb.4.0;";strConnection+=@"DataSource=C:

\Users\DELL\Desktop\宿舍.mdb";

OleDbConnectioncon=newOleDbConnection(strConnection);

OleDbDataAdaptersda=newOleDbDataAdapter(sql,con);

DataSetds=newDataSet();

sda.Fill(ds,"DormAdmin");

if(ds.Tables[0].Rows.Count==0)

MessageBox.Show("登陆失败!

","提示",MessageBoxButtons.OK,MessageBoxIcon.Error);

else

{

MessageBox.Show("登录成功!

","提示",MessageBoxButtons.OK,MessageBoxIcon.Information);

//this.Show()

a.Show();

}

con.Open();

//OleDbConnectionf=newOleDbConnection(sql,strConnection);

returnisUser;

}

privatevoidFormsOpen()

{

if(cboType.Text.Trim()=="管理员")

{

学生公寓管理adminForm=new学生公寓管理();

adminForm.Show();

}

}

privatevoidcboType_KeyUp(objectsender,KeyEventArgse)

{

if(e.KeyCode==Keys.Enter)

{

if(ValidateInput())

{

stringmessage="";

//调用ValidateUser()方法判断用户是否存在

boolisUser=ValidateUser(txtLoginId.Text,txtLoginPwd.Text,cboType.Text,refmessage);

if(isUser)

{

UserHelper.loginId=txtLoginId.Text.Trim();

UserHelper.loginType=txtLoginPwd.Text.Trim();

FormsOpen();

this.Visible=false;//隐藏登陆窗口

}

else

{

MessageBox.Show(message);

}

}

}

}

}

}

添加住宿生信息:

publicpartialclassAddStudentForm:

Form

{

publicAddStudentForm()

{

InitializeComponent();

}

privatevoidbutton2_Click(objectsender,EventArgse)

{

this.Close();

}

privatevoidAddStudentForm_Load(objectsender,EventArgse)

{

GetMajorId();//向专业编号组合框中输入数据

GetClassId();//向班级编号组合框中输入数据

GetDormId();//向宿舍编号组合框中输入数据

GetDormitoryId();//向房间编号组合框中输入数据

GetDormAdminId();////向宿管员编号组合框中输入数据

}

privateboolisInput(stringstuName,stringstuNo,stringage,stringaddress,refstringmessage)

{

if(stuName=="")

{

message="请输入学生姓名!

";

returnfalse;

}

elseif(stuNo=="")

{

message="请输入学号!

";

returnfalse;

}

elseif(age=="")

{

message="请输入年龄!

";

returnfalse;

}

elseif(address=="")

{

message="请输入地址!

";

returnfalse;

}

else

{

returntrue;

}

}

}

}

修改住宿生信息:

privatevoidAmendStuForm_Load(objectsender,EventArgse)

{

//调用组合框得到数据的方法

GetClassId();

GetMajorId();

GetDormId();

GetTeacherId();

GetDormitoryId();

GetDormAdminId();

InitialAmendForm();//调用初始化修改窗口的方法

}

privatevoidInitialAmendForm()

{

stringstuName="";

stringsex="";

intage=0;

stringaddress="";

intmajorId=0;

intclassId=0;

stringteacherId="";

stringdormAdminId="";

intdormId=0;

intdormitoryId=0;

stringphonNum="";

stringEmail="";

stringsql=string.Format("select*fromStudentwhereStuNo='{0}'",this.stuNo);

SqlCommandcommand=newSqlCommand(sql,DBHelper.connection);

try

{

if(DBHelper.connection.State==ConnectionState.Closed)

{

DBHelper.connection.Open();

}

SqlDataReaderdataReader=command.ExecuteReader();

if(dataReader.Read())

{

//stuNo=(string)dataReader["StuNo"];

stuName=(string)dataReader["StuName"];

sex=(string)dataReader["Sex"];

age=(int)dataReader["Age"];

address=(string)dataReader["Address"];

majorId=(int)dataReader["MajorId"];

classId=(int)dataReader["ClassId"];

teacherId=(string)dataReader["TeacherId"];

dormAdminId=(string)dataReader["DormAdminId"];

dormId=(int)dataReader["DormId"];

dormitoryId=(int)dataReader["DormitoryId"];

phonNum=(string)dataReader["PhonNum"];

Email=(string)dataReader["Email"];

txtStuNo.Text=this.stuNo;

txtStuName.Text=stuName;

//选择性别

if(sex=="男")

{

rdoMale.Checked=true;

}

else

{

rdoFemale.Checked=true;

}

txtAge.Text=age.ToString();

//txtAddress.Text=address;

//txtPhon.Text=phonNum;

cboMajorId.Text=majorId.ToString();

cboClassId.Text=classId.ToString();

//cboTeacherId.Text=teacherId.ToString();

//cboDormAdminId.Text=dormAdminId;

cboDormitoryId.Text=dormitoryId.ToString();

cboDormId.Text=dormId.ToString();

//txtEmail.Text=Email;

}

}

catch(Exceptionex)

{

MessageBox.Show(ex.Message);

}

finally

{

DBHelper.connection.Close();

}

}

 

//保存修改按钮

privatevoidbtnSave_Click(objectsender,EventArgse)

{

DialogResultresult=MessageBox.Show("您确定要修改吗?

","修改提示",MessageBoxButtons.OKCancel,MessageBoxIcon.Question);

if(result==DialogResult.OK)

{

//得到修改后的数据

stringstuNo=txtStuNo.Text.Tr

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2