大型数据库综合实训.docx
《大型数据库综合实训.docx》由会员分享,可在线阅读,更多相关《大型数据库综合实训.docx(18页珍藏版)》请在冰点文库上搜索。
大型数据库综合实训
河北科技大学唐山分院
《大型数据库综合实训》
实训报告
班级及专业:
09计算机应用技术(软件方向)
姓名:
牛丽辉
学号:
093306110
指导老师:
杨利
报告完成时间:
2011-6-27
目次
1实训内容1
1.1项目名称1
1.2实训时间1
1.3实训地点1
1.4实训目的1
1.5实训要求1
1.6主要技术介绍1
2需求分析1
3系统设计2
3.1数据库设计2
4实训心得15
1实训内容
1.1项目名称:
学生管理系统
1.2实训时间:
2011-6-20至2011-6-24
1.3实训地点:
A502
1.4实训目的:
了解数据库的相关操作,加强对SQL语句的练习。
通过实训,综合理解数据库设计和开发的过程,熟悉ADO.NET技术的具体应用方法,深入了解本学期所学知识,并为下学期进一步深入学习其他课程打下坚实的基础,不断提高学生的自学和综合运用能力。
1.5实训要求:
1.按时完成所规定的开发任务;
2.数据库设计要合理,能实现查找、删除、插入、修改等基本功能;
3.熟练使用SQLServer2005和.NET2008开发环境;
4.按要求完成实训报告;
5.增强团队意识,多与老师沟通;
1.6主要技术介绍:
数据库原理与技术,ADO.NET数据库访问技术。
2需求分析
利用多媒体技术与ADO.NET数据库访问技术做出的学生管理系统,是对学生信息和成绩进行管理的系统。
在系统中,教师和管理员可以对学生信息及成绩进行查询,浏览,还可以进行编辑,包括添加、删除、修改。
而学生仅仅可以进行查询浏览,不可以进行编辑。
学生管理系统是为学校设计的对学生信息进行管理的的系统,要求简单、易操作,使得大多数的人,包括老师同学都能立刻操作,不需要学习。
3系统设计
3.1数据库设计
3.1.1各实体的E-R图,并列出表结构(如下表)及表关系图
图3-1E-R图
表3-2stud(学生基本信息表)
列名
中文名称
标识
类型/长度
主键
外键
是否为空
备注
ID_card
身份证号
Char(18)
是
否
否
—
s_name
姓名
Char(8)
否
否
是
—
s_sex
性别
Char(8)
否
否
是
—
address
家庭住址
Char(12)
否
否
是
—
Politics_status
政治面貌
Char(4)
否
否
是
—
nation
民族
Char
(2)
否
否
是
—
表3-3newstud(学生新增信息表)
列名
中文名称
标识
类型/长度
主键
外键
是否为空
备注
s_numder
学号
Char(9)
是
是
否
—
ID_card
身份证号
Char(18)
否
否
否
—
cellphone
联系电话
Char(11)
否
否
是
—
telephone
家庭电话
Char(7)
否
否
是
—
post
职务
Char(4)
否
否
是
—
表3-4grade(成绩表)
列名
中文名称
标识
类型/长度
主键
外键
是否为空
备注
ID
序号
Int
是
否
否
—
s_numder
学号
Char(9)
否
是
否
—
course_number
课程号
Char
(2)
否
是
否
—
score
分数
Char(3)
否
否
是
—
表3-5domain(专业表)
列名
中文名称
标识
类型/长度
主键
外键
是否为空
备注
do_number
专业代码
Char
(2)
是
否
否
—
do_name
专业名称
Char(8)
否
否
是
—
表3-6department(系表)
列名
中文名称
标识
类型/长度
主键
外键
是否为空
备注
Dep_number
系别代码
Char
(2)
是
否
否
—
Dep_name
系别名称
Char(10)
否
否
是
—
表3-7course(课程表)
列名
中文名称
标识
类型/长度
主键
外键
是否为空
备注
Course_number
课程号
Char
(2)
是
否
否
—
Course_name
课程名
Char(10)
否
否
是
—
Term
学年
Char(10)
否
否
是
—
表3-8class(班级表)
列名
中文名称
标识
类型/长度
主键
外键
是否为空
备注
Cla_number
班级号
Char
(2)
是
否
否
—
Cla_name
班级名
Char(10)
否
否
是
—
表3-9users(用户表)
列名
中文名称
标识
类型/长度
主键
外键
是否为空
备注
Users
用户名
Char(6)
否
否
否
—
Password
密码
Char(3)
否
否
否
—
3.2系统功能模块设计
图3-10
3.3系统实现(程序运行界面及关键代码)
图3-11
图3-12
图3-13
图3-14
图3-15
图3-16
图3-17
图3-18
图3-19
图3-20
登陆代码:
SqlConnectioncon=newSqlConnection("server=.;database=student;uid=sa;pwd=123");
SqlCommandcom=newSqlCommand("",con);
com.Connection.Open();
com.CommandText="Selectcount(*)fromuserswhereusers='"+comboBox1.Text+"'andpassword='"+textBox1.Text+"'";
if((int)com.ExecuteScalar()>0)
{
a=comboBox1.Text;
this.Close();
b=true;
}
else{
MessageBox.Show("输入密码不正确!
");
textBox1.Text="";
textBox1.Focus();
}
con.Close();
查找代码:
stringConnectionString="server=.;DataBase=student;uid=sa;pwd=123";
SqlConnectioncon=newSqlConnection(ConnectionString);
SqlCommandcmd=newSqlCommand("",con);
cmd.Connection.Open();
stringstr="";
if(comboBox1.Text.Trim()=="身份证号")
{
str="stud.ID_card";
}
elseif(comboBox1.Text.Trim()=="学号")
{
str="s_numder";
}
stringstrTspl="select*fromstudentwhere"+str+"='"+textBox1.Text+"'";
cmd.CommandText="selects_namefromstudjoinnewstudonstud.ID_card=newstud.ID_cardwhere"+str+"='"+textBox1.Text+"'";
Strings_name=(String)cmd.ExecuteScalar();
textBox3.Text=s_name;
cmd.CommandText="selects_sexfromstudjoinnewstudonstud.ID_card=newstud.ID_cardwhere"+str+"='"+textBox1.Text+"'";
Strings_sex=(String)cmd.ExecuteScalar();
textBox4.Text=s_sex;
cmd.CommandText="selectnationfromstudjoinnewstudonstud.ID_card=newstud.ID_cardwhere"+str+"='"+textBox1.Text+"'";
Stringnation=(String)cmd.ExecuteScalar();
textBox5.Text=nation;
cmd.CommandText="selectstud.ID_cardfromstudjoinnewstudonstud.ID_card=newstud.ID_cardwhere"+str+"='"+textBox1.Text+"'";
StringID_card=(String)cmd.ExecuteScalar();
textBox6.Text=ID_card;
cmd.CommandText="selectaddressfromstudjoinnewstudonstud.ID_card=newstud.ID_cardwhere"+str+"='"+textBox1.Text+"'";
Stringaddress=(String)cmd.ExecuteScalar();
textBox7.Text=address;
cmd.CommandText="selectpolitics_statusfromstudjoinnewstudonstud.ID_card=newstud.ID_cardwhere"+str+"='"+textBox1.Text+"'";
Stringpolitics_status=(String)cmd.ExecuteScalar();
textBox8.Text=politics_status;
cmd.CommandText="selects_numderfromnewstudjoinstudonstud.ID_card=newstud.ID_cardwhere"+str+"='"+textBox1.Text+"'";
Strings_numder=(String)cmd.ExecuteScalar();
textBox9.Text=s_numder;
cmd.CommandText="selectcellphonefromnewstudjoinstudonstud.ID_card=newstud.ID_cardwhere"+str+"='"+textBox1.Text+"'";
Stringcellphone=(String)cmd.ExecuteScalar();
textBox10.Text=cellphone;
cmd.CommandText="selecttelephonefromnewstudjoinstudonstud.ID_card=newstud.ID_cardwhere"+str+"='"+textBox1.Text+"'";
Stringtelephone=(String)cmd.ExecuteScalar();
textBox11.Text=telephone;
cmd.CommandText="selectpostfromnewstudjoinstudonstud.ID_card=newstud.ID_cardwhere"+str+"='"+textBox1.Text+"'";
Stringpost=(String)cmd.ExecuteScalar();
textBox12.Text=post;
添加代码:
SqlConnectioncon=newSqlConnection();
con.ConnectionString="server=.;DataBase=student;uid=sa;pwd=123";
SqlCommandcmd=newSqlCommand("",con);
cmd.Connection.Open();
cmd.CommandText="insertintostudvalues('"+textBox2.Text+"','"+textBox1.Text+"','"+textBox3.Text+"','"+textBox6.Text+"','"+textBox5.Text+"','"+textBox4.Text+"')";
cmd.ExecuteNonQuery();
cmd.CommandText="insertintonewstudvalues('"+textBox7.Text+"','"+textBox9.Text+"','"+textBox10.Text+"','"+textBox11.Text+"','"+textBox8.Text+"')";
cmd.ExecuteNonQuery();
MessageBox.Show("添加成功!
");
con.Close();
删除代码:
SqlConnectioncon=newSqlConnection();
con.ConnectionString="server=.;DataBase=student;uid=sa;pwd=123";
SqlCommandcmd=newSqlCommand("",con);
cmd.Connection.Open();
DialogResultr=MessageBox.Show("您确定要删除吗?
","系统提示",MessageBoxButtons.OKCancel);
if(r==DialogResult.OK)
{
cmd.CommandText="deletestudwhereID_card='"+comboBox1.Text+"'";
cmd.ExecuteNonQuery();
cmd.CommandText="deletenewstudwhereID_card='"+comboBox1.Text+"'";
cmd.ExecuteNonQuery();
comboBox1.Text="";
textBox1.Text="";
textBox2.Text="";
textBox3.Text="";
textBox4.Text="";
textBox5.Text="";
textBox6.Text="";
textBox7.Text="";
textBox8.Text="";
textBox9.Text="";
textBox10.Text="";
textBox11.Text="";
MessageBox.Show("删除成功!
");
}
con.Close();
修改代码:
SqlConnectioncon=newSqlConnection();
con.ConnectionString="server=.;DataBase=student;uid=sa;pwd=123";
SqlCommandcmd=newSqlCommand("",con);
cmd.Connection.Open();
cmd.CommandText="updatedbo.studsets_name='"+textBox1.Text+"',ID_card='"+textBox2.Text+"',s_sex='"+textBox3.Text+"',nation='"+textBox4.Text+"',politics_status='"+textBox5.Text+"',address='"+textBox6.Text+"'whereID_card='"+comboBox1.Text+"'";
cmd.ExecuteNonQuery();
cmd.CommandText="updatedbo.newstudsets_numder='"+textBox7.Text+"',ID_card='"+textBox9.Text+"',post='"+textBox8.Text+"',telephone='"+textBox10.Text+"',cellphone='"+textBox11.Text+"'whereID_card='"+comboBox1.Text+"'";
cmd.ExecuteNonQuery();
MessageBox.Show("修改成功!
");
con.Close();
4实训心得
实训心得
通过这段时间的学习,我对数据库的应用更加了解。
我们实训的内容是数据库的约束、视图、查询,和简单select语句的使用,多表连接查询。
;登录账户的管理;数据库角色的管理;用户权限管理。
维护数据库的安全是确保数据库正常运行的重要工作。
我做的是一个学生管理系统,用来协助老师和学校的工作人员对学生信息和成绩进行管理,主要的一些查询及增删改的操作都做了出来,但还有一些细节做得不够完善,尽管作品已经交了,但我会时刻对我的作品进行完善。
教师评语
成绩
综合评定