好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

数据库应用系统设计案例课件.ppt

81页
  • 卖家[上传人]:des****85
  • 文档编号:309786824
  • 上传时间:2022-06-13
  • 文档格式:PPT
  • 文档大小:415.50KB
  • / 81 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 第第11章数据库应用系统设计案例章数据库应用系统设计案例11.1 图书馆管理系统的设计图书馆管理系统的设计本例以图书馆管理系统为例说明如何开发数据库应用程序11.1.1 需求分析需求分析图书馆是这样的部门,馆中收藏大量图书图书馆是这样的部门,馆中收藏大量图书供读者借阅,其中图书可分成不同的类别,供读者借阅,其中图书可分成不同的类别,如自然科学类,社会科学类等;借阅者可如自然科学类,社会科学类等;借阅者可分为老师和学生不同的借阅者最多可借分为老师和学生不同的借阅者最多可借的书的数量和期限不同,如教师最多可借的书的数量和期限不同,如教师最多可借10本,期限为本,期限为3个月,学生最多可借个月,学生最多可借2本,本,期限为期限为1个月,无论老师和学生借阅超期还个月,无论老师和学生借阅超期还要进行罚款处理要进行罚款处理 11.1.2 概念结构设计概念结构设计图书馆管理系统的E-R图读者读者图书借阅日期mnpq金额日期罚款读者读者借书证号借书证号读者姓名读者姓名性别性别是否有超期是否有超期读者实体与其属性读者实体与其属性读者类别读者类别图书图书条形码号条形码号书名书名作者作者出版社出版社图书实体与其属性图书实体与其属性出版日期出版日期书的类别书的类别图书编号图书编号借阅状态借阅状态借阅次数借阅次数11.1.3 逻辑结构设计逻辑结构设计读者(读者(借书证号借书证号,读者姓名,性别,读者类别,是否,读者姓名,性别,读者类别,是否有超期)有超期)图书(图书(条形码号条形码号,图书编号,书名,作者,出版社,图书编号,书名,作者,出版社,出版日期,书的类别,借阅状态,借阅次数出版日期,书的类别,借阅状态,借阅次数)借阅(借阅(借书证号,条形码号,借出日期借书证号,条形码号,借出日期,归还日期),归还日期)罚款(罚款(借书证号,条形码号,处罚日期借书证号,条形码号,处罚日期,超期天数,超期天数,罚款金额罚款金额)另外,为了保证系统的安全性,采用了登录的措施,另外,为了保证系统的安全性,采用了登录的措施,用户名和密码存放在密码表中。

      用户名和密码存放在密码表中密码表(密码表(用户名用户名,密码),密码) 11.1.4 规范化分析规范化分析除除罚款罚款关系外,其它关系外,其它4个关系模式中主码个关系模式中主码是本模式的唯一决定因素,所以这是本模式的唯一决定因素,所以这4个关系个关系模式都属于模式都属于BCNF .但是在但是在罚款罚款关系中,罚款金额关系中,罚款金额=日罚款额日罚款额超期天数,所以超期天数,所以 超期天数超期天数罚款金额,而罚款金额,而 超期天数超期天数(借书证号,条形码号,处罚日期借书证号,条形码号,处罚日期),所以,所以(借书证号,条形码号,处罚日期借书证号,条形码号,处罚日期) 罚款金额,存在传递函数依赖,所以罚款金额,存在传递函数依赖,所以罚罚款款关系属于关系属于2NF,存在冗余现象存在冗余现象读者往往既关心超期天数,又关心罚款金额,读者往往既关心超期天数,又关心罚款金额,所以所以“罚款金额罚款金额”是必要的冗余是必要的冗余 11.1.5 在在SQL Server 2000 中创建数据库中创建数据库图书表的结构图书表的结构字段名字段名数据类型数据类型长度长度条形码号条形码号char 13图书编号图书编号char 10书名书名 varchar 20作者作者 varchar20出版社出版社varchar50出版日期出版日期datetime8类别类别 char 10借阅状态借阅状态char 4借阅次数借阅次数smallint2读者表的结构读者表的结构字段名字段名 数据类型数据类型长度长度借书证号借书证号 char 10读者姓名读者姓名 varchar20性别性别 char 2读者类别读者类别 char 1是否有超期是否有超期 char 1借阅表的结构借阅表的结构字段名字段名数据类型数据类型 长度长度借书证号借书证号 char 10条形码号条形码号 char 13借出日期借出日期 datetime 8归还日期归还日期 datetime 8罚款表的结构罚款表的结构字段名字段名 数据类型数据类型 长度长度借书证号借书证号char 10条形码号条形码号char 13处罚日期处罚日期datetime 8超期天数超期天数int 4罚款金额罚款金额money 8密码表的结构密码表的结构字段名字段名数据类型数据类型长度长度用户名用户名char 10密码密码char 611.1.6 用用VB6.0 开发应用程序开发应用程序1图书馆管理系统的功能图书馆管理系统的功能图书馆管理系统图书馆管理系统读读者者管管理理图图书书管管理理借借阅阅管管理理罚罚款款管管理理2配置数据源配置数据源用前面介绍的方法,利用用前面介绍的方法,利用ODBC数据源管理数据源管理器配置一个连接到器配置一个连接到“图书馆图书馆”数据库的数数据库的数据源,名为据源,名为“图书管理图书管理”, 1)设计)设计MDI主窗体。

      主窗体 3设计各个窗体设计各个窗体其中菜单的结构如下表所示其中菜单的结构如下表所示 标题及位置标题及位置 名称名称 标题及位置标题及位置 名称名称 系统管理系统管理 m_system 图书流通图书流通m_flow 注册新用户注册新用户 m_rigister 借阅管理借阅管理m_lend 退出系统退出系统m_exit罚款管理罚款管理m_punish基本信息基本信息 m_basi 报表报表m_report 读者信息管理读者信息管理 m_reader 图书借阅排行图书借阅排行m_lendp 读者信息浏览读者信息浏览m_readerscan 借阅报表借阅报表m_lend_report 读者信息查询读者信息查询m_readerquery罚款报表罚款报表m_punish_report 图书信息管理图书信息管理m_book关于关于m_about 图书信息查询图书信息查询m_bookquery2)设计登录窗体)设计登录窗体Dim miCount As Integer用于记录输入密码次数用于记录输入密码次数Dim str As Stringstr = select 密码密码 from 密码表密码表 where 用户名用户名= & Text1.Text & Adodc1.RecordSource = strAdodc1.RefreshIf Adodc1.Recordset.EOF = True ThenMsgBox 用户名错误,请重新输入用户名错误,请重新输入, vbExlamation, 警告警告Text1.Text = Text1.SetFocusElse If Adodc1.Recordset.Fields(密码密码) = Text2.Text Then MDIForm1.Show Unload Me Else MsgBox 密码错误,请重新输入密码错误,请重新输入, vbExlamation, 警告警告 Text2.Text = Text2.SetFocus End IfEnd IfmiCount = miCount + 1If miCount = 3 Then Unload Me3)设计读者管理窗体)设计读者管理窗体(1)设计界面Private Sub Form_Load()CmdFirst.Enabled = FalseCmdPre.Enabled = FalseCmdNext.Enabled = TrueCmdLast.Enabled = TrueCmdAdd.Enabled = TrueCmdDel.Enabled = TrueCmdOk.Enabled = FalseCmdCancel.Enabled = FalseEnd SubPrivate Sub CmdAdd_Click()Adodc1.Recordset.AddNewCmdAdd.Enabled = FalseCmdDel.Enabled = FalseCmdOk.Enabled = TrueCmdCancel.Enabled = TrueEnd SubPrivate Sub CmdOk_Click()Adodc1.Recordset.UpdateCmdAdd.Enabled = TrueCmdDel.Enabled = TrueCmdOk.Enabled = FalseCmdCancel.Enabled = FalseEnd Sub Private Sub CmdDel_Click()x = MsgBox(确实要删除当前记录吗?确实要删除当前记录吗?, vbYesNo + vbQuestion)If x = vbYes Then Adodc1.Recordset.Delete Adodc1.Recordset.MoveNext If Adodc1.Recordset.EOF = True Then Adodc1.Recordset.MoveLast End IfElse Adodc1.RefreshEnd IfEnd Sub Private Sub CmdCancel_Click()Adodc1.RefreshCmdAdd.Enabled = TrueCmdDel.Enabled = TrueCmdOk.Enabled = FalseCmdCancel.Enabled = FalseEnd Sub Private Sub CmdFirst_Click()Adodc1.Recordset.MoveFirstCmdFirst.Enabled = FalseCmdPre.Enabled = FalseCmdNext.Enabled = TrueCmdLast.Enabled = TrueEnd SubPrivate Sub CmdPre_Click()Adodc1.Recordset.MovePreviousCmdNext.Enabled = TrueCmdLast.Enabled = TrueIf Adodc1.Recordset.BOF = True Then Adodc1.Recordset.MoveFirst CmdFirst.Enabled = False CmdPre.Enabled = False End IfEnd SubPrivate Sub CmdNext_Click()Adodc1.Recordset.MoveNextCmdFirst.Enabled = TrueCmdPre.Enabled = TrueIf Adodc1.Recordset.EOF = True Then Adodc1.Recordset.MoveLast CmdLast.Enabled = False CmdNext.Enabled = False End IfEnd SubPrivate Sub CmdLast_Click()Adodc1.Recordset.MoveLastCmdFirst.Enabled = TrueCmdPre.Enabled = TrueCmdNext.Enabled = FalseCmdLast.Enabled = FalseEnd Sub4)设计读者查询窗体)设计读者查询窗体(1)设计界面其中其中Adodc1连接到读者表,在连接到读者表,在“记录源记录源”选项卡中,选择命令类型。

      选项卡中,选择命令类型1-adCmdText,在,在“命令文本命令文本”文本框中输入文本框中输入SQL语句语句select * from 读者表2)编写代码)编写代码Private Sub Form_Load() 窗体装载代码窗体装载代码Combo1.AddItem 借书证号借书证号Combo1.AddItem 读者姓名读者姓名Combo1.AddItem 是否有超期是否有超期Combo1.Text = 借书证号借书证号Text1.Text = End Sub Private Sub Command1_Click() “查询查询”按钮代码按钮代码Dim str As Str。

      点击阅读更多内容
      相关文档
      高等学校学生手册.doc 2025年区教育系统招聘编外教师储备人才事业单位考试押题.docx 2025年秋季青岛版三年级数学上册认识轴对称现象教学课件.pptx 2025年秋季青岛版三年级数学上册用乘法估算解决问题教学课件.pptx 2025年秋季青岛版三年级数学上册两、三位数乘一位数的笔算(不进位)教学课件.pptx 2025年秋季青岛版三年级数学上册1200张纸有多厚教学设计范文.docx 2025年秋季青岛版三年级数学上册多位数除以一位数教学课件.pptx 2025年秋季青岛版三年级数学上册认识平移、旋转现象教学课件.pptx 2025年秋季青岛版三年级数学上册多位数乘一位数教学设计范本.docx 2025年秋季青岛版三年级数学上册认识平移与旋转教学设计范文.docx 2025年秋季青岛版三年级数学上册乘数中间有0或末尾有0的乘法教学课件.pptx 2025年秋季青岛版三年级数学上册两位数乘一位数的笔算(进位)教学课件.pptx 2025年秋季青岛版三年级数学上册《两、三位数乘一位数的笔算(不进位)》教学设计与意图.docx 2025年秋季青岛版三年级数学上册我学会了吗教学课件.pptx 2025年连云港市妇幼保健院招聘专业技术人员考试笔试试题.docx 2025年深圳市大鹏新区发展和财政局招聘考试笔试试卷.docx 2025年绵阳市梓潼县财政投资评审中心招聘考试试题.docx 2025年来宾市妇幼保健院招聘考试笔试试题.docx 2025年无极县教育系统招聘教师考试笔试试卷.docx 2025年灵山县第三中学调配教师考试笔试试题.docx
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.