数据库第四次上机实验报告
咳咳,数据库实验十三准备重构中...
之前摆烂,现在得还债了。
实验十一 数据库的备份与恢复
一、实验目的
了解 Navicat 的数据备份和恢复机制,掌握 Navicat 中数据库备份和恢复的方法。
二、实验内容
1、备份
步骤:使用用户 root 打开连接 MySQL —打开数据库 world —点击界面上方的“备份”—新建备份,如图所示:
点击“backup”—成功完成后点击保存—保存名称为 world —确定,结果如图1.2所示:
2、恢复还原
步骤:接第1部分操作—删除数据库 world — 在连接 MySQL 中新建一个空的数据库 world(名称需相同)--打开—点击“备份”可以看到如图所示界面:
选择标有时间的备份文件—点击“还原备份”,会弹出如所示对话框:
点击开始—确定。
过程成功之后会发现数据库 world 已成功恢复(可能需要先关闭再打开)。
3、用 Navicat 计划任务备份 MySQL 数据库。
备份连接 MySQL 中的所有数据库(也可以单独选择某一数据库进行备份):
① 点击“计划” -> “新建批处理作业” ② 默认就有“Backup Server MySQL”这个备份动作。如图所示:
③ 双击它,它就被加入到了如图所示的计划队列中:
④ 点击“保存”,弹出设置文件名的对话框,输入这个计划的名称即可,如图所示:
⑤ 保存之后,任务栏上的“设置计划任务”变成可用状态。点击“设置计划任务”(可能会报错:“指定的错误:0x80041315,任务计划程序服务没有运行。”或者“指定错误:0x80070005:拒绝访问”解决方法见本实验的步骤4),弹出设置的对话框。在“任务”标签下设置密码,就是数据库所在电脑的登录密码,没有的话可以不设。如图所示:
⑦ 设置完之后,点击确定,等这个计划运行过之后(可以控制设置的时间以尽快看到结果),看一下备份的效果,备份的文件的位置为:“我的文档” -> “Navicat” -> “MySQL” -> “servers” -> “MySQL”,里面就有各个数据库对应的文件夹,如图所示:
⑧ 各文件中会生成 .psc
文件,包含了这个库的数据,以后可以用来做还原。如图所示:
三、课后练习题
1、创建一个备份设备用于备份数据库 master,并尝试还原数据库 master。
备份:
还原:
2、实验二中所用到的导出和导入方法也可以达到备份的效果,尝试用该方法备份和还原数据库 world。
备份:
还原:
3、思考题:备份策略和备份规划指的分别是什么?
备份策略:全量数据备份、增量数据备份、日志备份
备份规划:备份的时间、内容、频率等等
4、给数据库 world 设计一个备份规划(频率和时间自定,要可看到结果)。
结果:
实验十三 综合实验
一、实验目的
1、熟悉数据库应用系统需求分析;
2、熟悉数据库设计的基本方法;
3、掌握数据库和数据表的创建方法;
4、掌握视图的创建方法;
5、了解各种数据完整性约束;
6、对存储过程和触发器有一个完整的认识。
二、实验要求
给出网上书店管理系统的需求分析报告(见四),要求根据功能分析和数据分析设计概念模型,实现完整的数据库(包括:各种表,视图,必要的存储过程,触发器等)。
三、实验内容和步骤
1、需求分析:
一个书店中的书籍类别、数量是非常庞大的,虽然书籍的分类是非常规范,但仅仅局限于概念上的分类仍无法运用于实践当中,这就给管理人员带来了极大的工作量,因此就需要一个比较科学的管理办法来解决此问题——利用 MySQL 数据库来进行数据管理。
2、概要分析:
该系统主要分为两部分,一个为普通会员用户部分,亦即前台系统。另外一个是系统的管理员部分,即后台系统。网上书店前台系统部分主要是实现网上选书、购书、产生订单等功能的系统。后台实现书籍管理、用户管理、订单处理等功能。
3、开发技术:
MySQL 8.0.25,Navicat。
开发语言:MySQL
开发技术:数据库开发技术
面向对象:需求者
4、系统 E-R 图
5、概念结构设计
系统共有 6 个实体:图书目录、图书库存、采购、客户、订单、发货、供应商
(1)图书目录的属性:书号、书名、作者、出版社、价格、关键字、本书的目录、封皮
(2)图书库存的属性:书号、存货量、供书商、丛书、库存存放位置
(3)采购的属性:书号、书名、出版社、供书商、数量、登记日期、顾客email
(4)客户的属性:网上ID、登录密码、名称、地址、帐户余额、信用等级
(5)订单的属性:订单号、订货日期、客户ID、书号、订书数量、金额、发货地址、发货情况
(6)供应商的属性:供应商编号、供应商基本信息、供应商供货信息、现有书目信息
6、逻辑结构设计
图书(书号,书名,出版社,价格,目录,封皮)
作者(作者名,书号,顺序号)
关键字(关键字,书号)
供应(书号,供书商)
丛书(书号,书名)
库存(书号,存货量,库存存放位置)
采购单(书号,数量,登记日期,顾客email)
客户(网上ID,登录密码,名称,地址,帐户余额,信用等级,信用额度)
订单(订单号,订货日期,客户ID,订单金额)
订单中的书(订单号,书号,数量)
发货(订单号,发货情况)
供应商(供应商编号,供应商基本信息)
供应商供货(供应商编号,供应商供货信息)
供应商现有书目(供应商编号,书号,数量)
7、细化表结构
- 图书信息表book_info:
- 作者信息表 author_list:
- 关键字表 keywords_list:
- 供应表 provide_list:
- 丛书情况表 series_book:
- 库存情况表 reserve_info:
- 采购表 purchase_list:
- 客户表 customer_info:
- 订单表 order_list:
- 订单中的书 books_in_order:
- 发货表 delivery_info:
- 供应商 provider_list:
- 供应商供货 provider_supply:
- 供应商现有书目 provider_books:
8、创建数据库
9、创建数据表及必要的约束:
10、建立必要的视图:
11、创建必要的外键:
12、创建必要的触发器:
四、相关资料
网上书店管理系统的需求分析报告
设计一个小型的数据库应用系统,服务于一个网上书店的日常处理业务及网上购书业务,包括供书目录、库存管理、采购管理、客户管理,顾客订单管理、发货管理,供应商管理及网上浏览等。
总体设计要求:书店内部日常处理业务通过C/S模式来实现,而顾客可通过Internet进行网上订书及查询浏览,为改善性能,应尽量将业务规则放在中间层或数据库服务器一端。 该系统的主要功能如下:
1、供书目录及库存管理
供书目录管理及库存管理为书店的主要日常业务,应包括建立和更新供书目录,新书入库功能等。需要记录供书的信息有:书号,书名,作者(最多可包括四个作者,有序),出版社,价格,关键字(最多10个),本书的目录(可选),封皮(可选),存货量,供书商(一本书可有多个供应商,可选)等,并且需考虑丛书的问题(即一个书号包含多本书),库存存放位置(可采用示意图表示,可选)。
2、采购管理
采购管理为书店的主要日常业务之一,包括缺书登记管理及采购单管理。
缺书登记可通过以下几种方法生成:
- 1)直接进行缺书登记,包括书号,书名,出版社,供书商,数量,登记日期。
- 2)存书量低于一定限度时,自动生成缺书记录(注:不能有重复),最低存书量可设定。(可选)
- 3)顾客在网上进行缺书登记或订货数量超出库存时,生成缺书记录(注:不能有重复),必要时,应记录下顾客的缺书请求,以便答复。(可选) 采购单管理:根据缺书记录单可选择生成采购单,到货时对采购单作相应处理,并增加库存量,删除缺书记录,EMAIL通知缺书登记的顾客(可选)等。
采购单管理:根据缺书记录单可选择生成采购单,到货时对采购单作相应处理,并增加库存量,删除缺书记录,EMAIL 通知缺书登记的顾客(可选)等。
3、客户管理
客户管理包括客户信息管理及信用管理。需要记录客户的信息包括:网上 ID,登录密码,名称,地址,帐户余额,信用等级等。
有关客户信息的管理,分别由书店管理和客户网上管理完成,书店管理包括收到客户的款项后,增加客户的帐户余额;调整信用额度。客户其他信息由客户在网上维护,如注册一个新的用户,修改用户信息等等。
信用等级分为五级,一级为 10% 的折扣,不能透支;二级为 15% 的折扣,不能透支;三级为15%的折扣,可先发书再付款,透支有额度限制;四级为 20% 的折扣,可先发书再付款,透支有额度限制;五级为 25% 的折扣,可先发书再付款,透支无额度限制。信用等级管理有两种形式:一种是书店进行管理;一种是自动进行管理,即在每月月初根据该帐户的余额或累计购书总金额进行调整,如帐户余额超过一定金额,提升其信用额度,或者累计购书总金额超过一定金额提升其信用额度(可选)。
4、顾客订单管理和发货管理
顾客订单包括订单号,订货日期,客户ID,书号,订书数量,金额,发货地址,发货情况等。
订单由顾客在网上申请生成。一个订单可订多本书(可选)。并仅能对书库中已有的书目进行订购,库存量不足时可以先订货;当客户查询的书目在书库中没有找到时,将会询问客户是否希望做进一步的询价及报价。
发货管理为书店日常业务管理之一,必须根据订单情况及客户的信用等级判断其付款额是否到帐,并相应扣减其帐户余额后,才能发货。对一个订单可分次发货(可选)
5、供应商管理
供应商相关信息,包括:供应商基本信息,供应商供货信息,并且不同的供应商发布自己现有书目信息。
6、网上浏览查询
可查询以下二类信息:
- 1)客户相关信息,包括:客户基本信息,客户历史订单信息,相关订单的发货信息等。
- 2)书目信息:可按照书号,书名,出版社,关键字(可指定匹配程度(可选))、作者(按第一,第二……作者查询(可选)),进行查询,并可进行模糊查询(可选)。 要求:必须根据所有必选的功能和数据需求设计实现完整的数据库(包括:各种表,视图,必要的存储过程,触发器等)。
参考:
1、哆啦一泓