ImageVerifierCode 换一换
格式:DOCX , 页数:22 ,大小:523.04KB ,
资源ID:4951739      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4951739.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数据库课程设计.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数据库课程设计.docx

1、数据库课程设计河南理工大学计算机科学与技术学院实习报告2011 2012学年第 一 学期实习名称 学生选课信息系统 实习地点 计算机楼605 实习日期 2011 .12.262012.1.8 学生姓名 学 号 专业班级 指导教师 2012年 1月 9日目 录一、需求描述 3二、系统分析 32.1 系统功能分析 32.2 E-R图 3三、逻辑结构设计 63.1 E-R图转换 63.2逻辑结构设计 6四、实现 74.1 表结构 74.2 表实例 94.3 表间关系图 11五、功能模块实现 11六、小结 18一、需求描述学生选课系统是学校最常使用的管理系统,拥有广阔的市场前景,为了满足学校的需求,我

2、们开发此系统,方便学生和老师选课。二、系统分析2.1 系统功能分析学生选课系统的主界面里主要包含4个功能模块:系统管理,基本信息设置,选课管理,信息查询。1) . 系统管理是管理员所做的工作,包括对用户管理(添加删除用户,修改密码), 实现用户注销功能,数据库还原与备份,退出系统,修改密码.学生自己也可以修改密码。2). 基本信息设置模块主要是对学生信息,教师信息,课程信息的录入,添加和修改.同时也可以的学生信息,教师信息,课程信息进行查询.3). 选课管理包括学生选课和教师选课,主要实现学生选择自己想要的课程,教师选择自己要交的课程。4). 信息查询模块包括了多种查询方式:我们设置了学生查询

3、和教师查询。学生查询可以查看到个人信息(可以修改一部分),课程信息,教师信息,同学信息。教师查询可以查看个人信息,所教课程信息,所交学生信息。2.2 E-R图图2.2.1 教师信息表E-R图图2.2.2 学生信息表E-R图图2.2.3 课程表E-R图图2.2.4 用户表E-R图图2.2.5 教师选课表E-R图图2.2.6 学生选课表E-R图 m m n n m n图2.2.7 学生、教师、课程表间联系E-R图三、逻辑结构设计3.1 E-R图转换教师信息表(教师号,姓名,性别,职称,电话,住址,备注)学生信息表(学号,姓名,性别,生日,院系,年级,专业,电话,住址,备注)课程信息表(课程号,课程

4、名,学时,学分)教师选课表(教师选课编号,课程号,教师号)学生选课表(学生选课编号,学号,课程号,教师号)用户表(用户名,密码,权限)3.2逻辑结构设计选课系统数据库中各个表格的逻辑结构设计结果如下:字段名类型条件说明SnoCharPrimary key学号SnamecharNot null姓名Ssexchar性别Sbirthdatetime出生日期ScolVarchar院别SgraVarchar年级SspeVarchar专业StelChar联系方式SaddressVarchar地址Sothertext备注表3.2.1学生信息表(student)字段名类型条件说明TnoCharPrimary

5、key教师编号TnameCharNot null教师姓名TsexChar性别Tposvarchar职位Ttelchar联系方式Taddressvarchar地址Tothertext备注表3.2.2教师信息表(teacher)字段名类型条件说明CnoCharPrimary key课程号CnamevarcharNot null课程名CtimeInt学时Cpointint学分表3.2.3课程信息表(course)字段名类型条件说明TCnocharPrimary key教师选课编号CnoChar课程号Tnochar教师编号表3.2.4教师选课表(T-choose)字段名类型条件说明SCnoCharPr

6、imary key学生选课编号SnoChar学生学号CnoChar课程号TnoChar教师编号表3.2.5学生选课表(S_choose)字段名类型条件说明UnameCharPrimary key用户名UpwdCharNot null密码UroleIntNot null权限(1表示管理员,2表示教师,3表示学生,4表示操作员)表3.2.6登录用户表(user_if)四、实现4.1 表结构图4.1.1 user_if表结构图图4.1.2 course表结构图图4.1.3 s_choose表结构图图4.1.4 student表结构图图4.1.5 t_choose表结构图图4.1.6 teacher表

7、结构图4.2 表实例图4.2.1 user_if表实例图图4.2.2 course表实例图图4.2.3 s_choose表实例图图4.2.4 student表实例图图4.2.5 t_choose表实例图图4.2.6 teacher表实例图4.3 表间关系图图4.3.1 表间关系图五、功能模块实现图5.1 查询学生信息Private Sub SmartNetXpButton1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single) Dim MsgText As String Dim dd(3) As Boole

8、an Dim mrc As ADODB.Recordset Dim rs As Boolean Dim sMeg As String rs = True On Error Resume Next txtSQL = select * from student where If Check1.Value Then If Trim(Combo1.Text) = Then sMeg = 学号不能为空 MsgBox sMeg, vbOKOnly + vbExclamation, 警告 Combo1.SetFocus Exit Sub Else dd(0) = True txtSQL = txtSQL &

9、 Sno = & Trim(Combo1.Text) & End If End If If Check2.Value Then If Trim(Combo2.Text) = Then sMeg = 姓名不能为空 MsgBox sMeg, vbOKOnly + vbExclamation, 警告 Combo2.SetFocus Exit Sub Else dd(1) = True If dd(0) Then txtSQL = txtSQL & and Sname= & Trim(Combo2.Text) & Else txtSQL = txtSQL & Sname= & Trim(Combo2.

10、Text) & End If End If End If If Check3.Value Then If Trim(Combo3.Text) = Then sMeg = 学生所属年级 MsgBox sMeg, vbOKOnly + vbExclamation, 警告 Combo3.SetFocus Exit Sub Else dd(2) = True If dd(0) Or dd(1) Then txtSQL = txtSQL & and Sgra= & Trim(Combo3.Text) & Else txtSQL = txtSQL & Sgra = & Trim(Combo3.Text)

11、& End If End If End IfIf Check4.Value Then If Trim(Combo4.Text) = Then sMeg = 请输入学生所属学院 MsgBox sMeg, vbOKOnly + vbExclamation, 警告 Combo4.SetFocus Exit Sub Else dd(3) = True If dd(0) Or dd(1) Or dd(2) Then txtSQL = txtSQL & and Scol= & Trim(Combo4.Text) & Else txtSQL = txtSQL & Scol = & Trim(Combo4.T

12、ext) & End If End If End IfIf Not (dd(0) Or dd(1) Or dd(2) Or dd(3) Then MsgBox 请设置查询方式!, vbOKOnly + vbExclamation, 警告 Exit Sub End If If rs = True Then txtSQL = txtSQL & order by Sno Set mrc = MyDB.ExecuteSQL(txtSQL, MsgText) f mrc.RecordCount 0 Then SmartNetXpButton4.Enabled = True Else SmartNetXp

13、Button4.Enabled = False End If With MSFlexGrid1 .Rows = 2 .CellAlignment = 4 .TextMatrix(1, 1) = 学号 .TextMatrix(1, 2) = 姓名 .TextMatrix(1, 3) = 性别 .TextMatrix(1, 4) = 出生日期 .TextMatrix(1, 5) = 院别 .TextMatrix(1, 6) = 年级 .TextMatrix(1, 7) = 专业 .TextMatrix(1, 8) = 联系方式 .TextMatrix(1, 9) = 地址 .TextMatrix(

14、1, 10) = 备注 Do While Not mrc.EOF .Rows = .Rows + 1 .CellAlignment = 4 .TextMatrix(.Rows - 1, 1) = mrc.Fields(0) .TextMatrix(.Rows - 1, 2) = mrc.Fields(1) .TextMatrix(.Rows - 1, 3) = mrc.Fields(2) .TextMatrix(.Rows - 1, 4) = mrc.Fields(3) .TextMatrix(.Rows - 1, 5) = mrc.Fields(4) .TextMatrix(.Rows -

15、1, 6) = mrc.Fields(5) .TextMatrix(.Rows - 1, 7) = mrc.Fields(6) .TextMatrix(.Rows - 1, 8) = mrc.Fields(7) .TextMatrix(.Rows - 1, 9) = mrc.Fields(8) .TextMatrix(.Rows - 1, 10) = mrc.Fields(9) mrc.MoveNext Loop End With mrc.Close End IfEnd Sub图5.2 学生选课Private Sub xian_MouseUp(Button As Integer, Shift

16、As Integer, X As Single, Y As Single) Dim i As Integer Dim k As Integer k = 0 Dim mrcc As ADODB.Recordset Dim txtstring As String Dim a, m, n As String Dim j, p, q As Integer strsql = select cno from course where cname= & List1.Text & Set rs = MyDB.ExecuteSQL(strsql, MsgText) If Not rs.EOF Then a =

17、rs.Fields(0) End If rs.Close strsql = select tno from teacher where tname= & List2.Text & Set rs = MyDB.ExecuteSQL(strsql, MsgText) If Not rs.EOF Then m = rs.Fields(0) End If rs.Close txtstring = select * from S_choose Set mrcc = MyDB.ExecuteSQL(txtstring, MsgText) For i = 0 To List3.ListCount - 1 I

18、f List3.List(i) = List1.Text Then k = 1 Next sqlstr = select * from S_choose,course where S_choose.Cno=course.Cno and Cname= & Trim(List1.Text) & and Sno= & Trim(user_name) & Set rs = MyDB.ExecuteSQL(sqlstr, MsgText) If Not rs.EOF Then k = 1 rs.Close strsql = select count(cno) from s_choose where sn

19、o= & user_name & Set rs = MyDB.ExecuteSQL(strsql, MsgText) f Not rs.EOF Then n = rs.Fields(0) End If rs.Close If k 1 Then If List1.ListIndex -1 And List2.ListIndex -1 Then If n 3 Then mrcc.AddNew mrcc.Fields(1) = user_name mrcc.Fields(2) = a mrcc.Fields(3) = m mrcc.Update MsgBox 贺喜你已经选了这门课程! List3.A

20、ddItem List1.Text List4.AddItem List2.Text mrcc.Close Else MsgBox 你已经超过3门课程,不能再选课, vbInformation + vbOKOnly, 提示 Exit Sub End If ElseIf List1.ListIndex = -1 Then MsgBox 请选中课程, vbInformation + vbOKOnly, 提示If List2.ListIndex = -1 Then MsgBox 请选中教师, vbInformation + vbOKOnly, 提示 End If Else MsgBox 你已经选了该

21、课程,请重选!, vbInformation + vbOKOnly, 提示 Exit Sub End If End Sub图5.3 教师选课Private Sub SmartNetXpButton1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single) Dim i As Integer Dim k As Integer Dim sqlstring As String Dim mrcc As ADODB.Recordset Dim ccno As String k = 0 For i = 0 To List2

22、.ListCount - 1 If List2.List(i) = List1.Text Then k = 1 Next sqlstring = select * from T_choose,course where T_choose.Cno=course.Cno and Cname= & Trim(List1.Text) & and tno= & Trim(user_name) & Set mrcc = MyDB.ExecuteSQL(sqlstring, MsgText) If Not mrcc.EOF Then k = 1 mrcc.Close If k 1 Then If List1.

23、ListIndex -1 Then sqlstring = select Cno from course where Cname= & Trim(List1.Text) & Set mrcc = MyDB.ExecuteSQL(sqlstring, MsgText) If Not mrcc.EOF Then ccno = mrcc.Fields(0) End If mrcc.Close txtstring = select * from T_choose Set mrc = MyDB.ExecuteSQL(txtstring, MsgText) mrc.AddNew If Not mrc.EO

24、F Then mrc.Fields(1) = ccno mrc.Fields(2) = user_name End If mrc.Update MsgBox 选课成功, vbOKOnly + vbExclamation, 祝贺 mrc.Close List2.AddItem List1.Text Else MsgBox 请选中你要教的课程, vbInformation + vbOKOnly, 提示 Exit Sub End If Else MsgBox 你已经选了该课程,请重选!, vbInformation + vbOKOnly, 提示 Exit Sub End IfEnd Sub六、小结这次课程设计为期两周,虽然以前也做过课程设计,但我认为这次很特别。通过这次的课程设计,我复习和巩固了VB知识,使自己的编程能力有了很大的提高,同时,也得到了同学们的帮助,在此感谢他们。最后祝老师在新的一年里工作顺利,万事如意!

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1