收藏 分销(赏)

NBA球员标准管理系统.docx

上传人:a199****6536 文档编号:3031756 上传时间:2024-06-13 格式:DOCX 页数:20 大小:165.74KB 下载积分:10 金币
下载 相关 举报
NBA球员标准管理系统.docx_第1页
第1页 / 共20页
NBA球员标准管理系统.docx_第2页
第2页 / 共20页


点击查看更多>>
资源描述
《NBA球员管理系统》 《数据库原理》课程设计汇报 ——NBA球员管理系统设计和实现 学 院: 信息学院 专业班级: 计算机科学和技术1班 组员姓名: 王治铭 2405 陈昭儒 2406 殷鹏飞 2400 指导老师: 李晓莉 完成日期: -6-17 一、 概述 1.1 背景说明 软件名称:NBA球员信息管理系统 用户:球队数据分析师 1.2 开发环境 操作系统 Windows 7 软件配置Visual Basic 6.0 & SQL Server 二、 需求分析 2.1 用户需求 NBA发展至今,整个联盟涵括了三十支球队,每支球队球员名单上限在常规赛时期能够达成15位,加上不计其数自由球员,管理并分析这些球员生涯数据成为了一件棘手事,NBA球员信息管理系统能够师处理这个问题。 本系统面向对象为球队数据分析师,对于专业人士,她们不仅有权浏览数据,也能够对数据进行修改、删除,用户共享数据并更新数据。 2.2 关键功效 本系统从用户需求出发,可实现以下功效: a) 球员数据浏览 b) 球员数据修改 c) 球员数据删除 2.3 数据字典 名称 数据类型 字段描述 char char 球员姓名 Prage smallint 球员年纪 Pno smallint 球衣号码 PID char 球员代号 Pcapital money 球员薪金 Tname char 隶属球队名称 TID char 隶属球队代号 ppg float 场均得分 rpg float 场均篮板 apg float 场均助攻 spg float 场均抢断 bpg float 场均盖帽 Pbe smallint 最近一场得分 三、 数据库概念结构设计 依据需求分析,可知本系统有以下E-R图: 球员薪金 隶属球队代号 隶属球队名称 球衣号码 球员年纪 球员代号 球员姓名 球员信息 3.1 球员信息E-R图 3.2 球员数据E-R图 场均抢断 场均助攻 场均篮板 场均盖帽 球员代号 场均得分 球员数据 球员姓名 3.3 球员表现E-R图 最近一场得分 球员表现 球员姓名 球员代号 四、 逻辑结构设计 4.1球员信息表 列名 NULL 约束 PID NOT NULL primary key Pname NOT NULL Pcapital NOT NULL Prage NOT NULL Pno NOT NULL Tname NOT NULL TID NOT NULL 4.2球员数据表 列名 NULL 约束 PID NOT NULL primary key Pname NOT NULL ppg NOT NULL rpg NOT NULL apg NOT NULL spg NOT NULL bpg NOT NULL 4.3 球员表现表 列名 NULL 约束 PID NOT NULL primary key Pname NOT NULL Pbe NOT NULL 五、 创建数据库及其对象 5.1 建表 5.1.1 球员信息表 create table player( PID char(10) NOT NULL, Pname char(25) NOT NULL, Pcapital money NOT NULL, Prage smallint NOT NULL, Tname char(30) NOT NULL, Pno smallint NOT NULL, TID char(15) NOT NULL, primary key (PID,Pname) ) 5.1.2 球员数据表 create table playerData ( PID char(10) NOT NULL, Pname char(25) NOT NULL, ppg float NOT NULL, rpg float NOT NULL, apg float NOT NULL, spg float NOT NULL, bpg float NOT NULL, primary key (PID,Pname) ) 5.1.3 球员表现表 create table behave( PID char(10) NOT NULL, Pbe smallint NOT NULL, Pname char(25) NOT NULL primary key (PID) ) 六、 基于VBUI设计 6.1 Form1窗口 Private Sub Add_Click() Adodc1.Recordset.AddNew Add.Enabled = False Del.Enabled = False Edit.Enabled = True Cancel.Enabled = True End Sub Private Sub Cancel_Click() Adodc1.Recordset.CancelUpdate Add.Enabled = True Del.Enabled = True Cancel.Enabled = False End Sub Private Sub Command1_Click()//打开form2窗口 Form2.Show End Sub Private Sub Del_Click() Dim res As Integer res = MsgBox("确实要删除此行吗?", vbExclamation + vbYesNo + vbDefaultButton2) If res = vbYes Then Adodc1.Recordset.Delete Adodc1.Recordset.MoveNext If Adodc1.Recordset.EOF = True Then Adodc1.Recordset.MoveLast End If End If End Sub Private Sub Edit_Click() Adodc1.Recordset.Fields("Pno") = Trim(TextPno.Text) Adodc1.Recordset.Fields("Pname") = Trim(TextPname.Text) Adodc1.Recordset.Fields("Prage") = Trim(TextPrage.Text) Adodc1.Recordset.Fields("Pcapital") = Trim(TextPcpt.Text) Adodc1.Recordset.Fields("PID") = Trim(TextPID.Text) Adodc1.Recordset.Fields("TID") = Trim(TextTID.Text) Adodc1.Recordset.Fields("Tname") = Trim(TextTname.Text) Adodc1.Recordset.Update Add.Enabled = True Del.Enabled = True Cancel.Enabled = False End Sub Private Sub Exit_Click() End End Sub Private Sub First_Click() Adodc1.Recordset.MoveFirst End Sub Private Sub Last_Click() Adodc1.Recordset.MoveLast End Sub Private Sub Next_Click() Adodc1.Recordset.MoveNext If Adodc1.Recordset.EOF = True Then Adodc1.Recordset.MoveLast End If End Sub Private Sub Previous_Click() Adodc1.Recordset.MovePrevious If Adodc1.Recordset.BOF = True Then Adodc1.Recordset.MoveFirst End If End Sub Private Sub Print_Click()//打开apg窗口 apg.Show End Sub Private Sub Form_Load() Cancel.Enabled = False Combo1.AddItem "球员信息" Combo1.AddItem "球员数据" Combo1.AddItem "球员表现" Combo1.AddItem "球员表现对比" Dim strPID As String Dim strSelect As String strPID = Trim(TextPID.Text) strSelect = "select * from player" Adodc1.CommandType = adCmdText Adodc1.RecordSource = strSelect Adodc1.Refresh Set DtgCond.DataSource = Adodc1 Call InitGird Dim strPID1 As String Dim strSelect1 As String strPID1 = Trim(TextPID.Text) strSelect1 = "select * from playerData" Adodc2.CommandType = adCmdText Adodc2.RecordSource = strSelect1 Adodc2.Refresh Set DtgCond1.DataSource = Adodc2 Call InitGird1 Dim strPID2 As String Dim strSelect2 As String strPID2 = Trim(TextPID.Text) strSelect2 = "select * from behave" Adodc3.CommandType = adCmdText Adodc3.RecordSource = strSelect2 Adodc3.Refresh Set DtgCond2.DataSource = Adodc3 Call InitGird2 Dim strPID3 As String Dim strSelect3 As String strPID3 = Trim(TextPID.Text) strSelect3 = "select * from playerData join behave on playerData.PID = behave.PID " Adodc4.CommandType = adCmdText Adodc4.RecordSource = strSelect3 Adodc4.Refresh Set DtgCond3.DataSource = Adodc4 End Sub Private Sub InitGird() With DtgCond .Columns(0).Caption = "ID" .Columns(1).Caption = "Name" .Columns(2).Caption = "Capital" .Columns(3).Caption = "Age" .Columns(4).Caption = "Team" .Columns(5).Caption = "No" .Columns(6).Caption = "Team ID" .Columns(0).Width = 1000 .Columns(1).Width = 1000 .Columns(2).Width = 1000 .Columns(3).Width = 1000 End With End Sub Private Sub InitGird1() With DtgCond1 .Columns(0).Caption = "ID" .Columns(1).Caption = "Name" .Columns(2).Caption = "ppg" .Columns(3).Caption = "rpg" .Columns(4).Caption = "apg" .Columns(5).Caption = "spg" .Columns(6).Caption = "bpg" .Columns(0).Width = 1000 .Columns(1).Width = 1000 .Columns(2).Width = 1000 .Columns(3).Width = 1000 End With End Sub Private Sub InitGird2() With DtgCond2 .Columns(0).Caption = "ID" .Columns(1).Caption = "pbe" .Columns(2).Caption = "Name" .Columns(0).Width = 1000 .Columns(1).Width = 1000 .Columns(2).Width = 1000 End With End Sub Private Sub Combo1_Click() If Combo1.Text = "球员信息" Then Frame1.ZOrder 0 ElseIf Combo1.Text = "球员数据" Then Frame2.ZOrder 0 ElseIf Combo1.Text = "球员表现" Then DtgCond2.ZOrder 0 ElseIf Combo1.Text = "球员表现对比" Then DtgCond3.ZOrder 0 End If End Sub 6.2 Form2窗口 Private Sub Add_Click() Adodc2.Recordset.AddNew Add.Enabled = False Del.Enabled = False Edit.Enabled = True Cancel.Enabled = True End Sub Private Sub Cancel_Click() Adodc2.Recordset.CancelUpdate Add.Enabled = True Del.Enabled = True Cancel.Enabled = False End Sub Private Sub Del_Click() Dim res As Integer res = MsgBox("确实要删除此行吗?", vbExclamation + vbYesNo + vbDefaultButton2) If res = vbYes Then Adodc2.Recordset.Delete Adodc2.Recordset.MoveNext If Adodc2.Recordset.EOF = True Then Adodc2.Recordset.MoveLast End If End If End Sub Private Sub Edit_Click() Adodc2.Recordset.Fields("Pbe") = Trim(TextPbe.Text) Adodc2.Recordset.Fields("Pname") = Trim(TextPname.Text) Adodc2.Recordset.Fields("PID") = Trim(TextPID.Text) Adodc2.Recordset.Update Add.Enabled = True Del.Enabled = True Cancel.Enabled = False End Sub Private Sub Exit_Click() End End Sub Private Sub First_Click() Adodc2.Recordset.MoveFirst End Sub Private Sub Last_Click() Adodc2.Recordset.MoveLast End Sub Private Sub Next_Click() Adodc2.Recordset.MoveNext If Adodc2.Recordset.EOF = True Then Adodc2.Recordset.MoveLast End If End Sub Private Sub Previous_Click() Adodc2.Recordset.MovePrevious If Adodc2.Recordset.BOF = True Then Adodc2.Recordset.MoveFirst End If End Sub Private Sub Form_Load() Cancel.Enabled = False End Sub 6.3 apg窗口 Private Sub Add_Click()  Adodc2.Recordset.AddNew  Add.Enabled = False  Del.Enabled = False  Edit.Enabled = True  Cancel.Enabled = True End Sub Private Sub Cancel_Click() Adodc2.Recordset.CancelUpdate Add.Enabled = True Del.Enabled = True Cancel.Enabled = False End Sub Private Sub Del_Click()  Dim res As Integer  res = MsgBox("确实要删除此行吗?", vbExclamation + vbYesNo + vbDefaultButton2)  If res = vbYes Then  Adodc2.Recordset.Delete  Adodc2.Recordset.MoveNext If Adodc2.Recordset.EOF = True Then      Adodc2.Recordset.MoveLast    End If  End If End Sub Private Sub Edit_Click() Adodc2.Recordset.Fields("ppg") = Trim(Textppg.Text) Adodc2.Recordset.Fields("Pname") = Trim(TextPname.Text) Adodc2.Recordset.Fields("rpg") = Trim(Textrpg.Text) Adodc2.Recordset.Fields("apg") = Trim(Textapg.Text) Adodc2.Recordset.Fields("PID") = Trim(TextPID.Text) Adodc2.Recordset.Fields("bpg") = Trim(Textbpg.Text) Adodc2.Recordset.Fields("spg") = Trim(Textspg.Text) Adodc2.Recordset.Update Add.Enabled = True Del.Enabled = True Cancel.Enabled = False End Sub Private Sub Exit_Click()  End End Sub Private Sub First_Click()  Adodc2.Recordset.MoveFirst End Sub Private Sub Last_Click() Adodc2.Recordset.MoveLast End Sub Private Sub Next_Click() Adodc2.Recordset.MoveNext  If Adodc2.Recordset.EOF = True Then    Adodc2.Recordset.MoveLast  End If End Sub Private Sub Previous_Click()  Adodc2.Recordset.MovePrevious  If Adodc2.Recordset.BOF = True Then    Adodc2.Recordset.MoveFirst  End If End Sub Private Sub Form_Load()  Cancel.Enabled = False End Sub 七、 试验数据实例 修改球员数据。 修改球员表现。 Form1中删除操作。 Form1中添加操作。 Form1中修改操作。 八、 心得 经过这次为期五天数据库课程设计实习,本组从中学习到了一个数据库程序设计基础步骤,包含需求分析、概念结构设计、逻辑结构设计等,同时加强了关系型数据库管理方面部分知识。需求分析是很关键,只有做好需求分析,后面工作才会轻松;逻辑结构设计也很关键,需要完善实体所应包含全部属性,假如这个阶段有纰漏,等到后面修改起来会比较麻烦。 这次课设提供了宝贵历练,让本组对数据库认知和程序编写方面全部得到了提升。
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服