《数据库系统原理》实验13:综合实验

一、实验目的

1、熟悉数据库应用系统需求分析;

2、熟悉数据库设计的基本方法;

3、掌握数据库和数据表的创建方法;

4、掌握视图的创建方法;

5、了解各种数据完整性约束;

6、对存储过程和触发器有一个完整的认识。

二、实验要求

给出网上书店管理系统的需求分析报告(见四),要求根据功能分析和数据分析设计概念模型,实现完整的数据库(包括:各种表,视图,必要的存储过程,触发器等)。

三、实验内容和步骤

1、需求分析:

一个书店中的书籍类别、数量是非常庞大的,虽然书籍的分类是非常规范,但仅仅局限于概念上的分类仍无法运用于实践当中,这就给管理人员带来了极大的工作量,因此就需要一个比较科学的管理办法来解决此问题——利用MySQL数据库来进行数据管理。

2、概要分析:

该系统主要分为两部分,一个为普通会员用户部分,亦即前台系统。另外一个是系统的管理员部分,即后台系统。网上书店前台系统部分主要是实现网上选书、购书、产生订单等功能的系统。后台实现书籍管理、用户管理、订单处理等功能。

3、开发技术:

Microsoft SQLServer 5.5.28

开发语言:SQL

开发技术:数据库开发技术

面向对象:需求者

4、系统主要功能

5、概念结构设计

系统共有6个实体:图书目录、图书库存、采购、客户、订单、发货、供应商

(1)图书目录的属性:书号、书名、作者、出版社、价格、关键字、本书的目录、封皮

(2)图书库存的属性:书号、存货量、供书商、丛书、库存存放位置

(3)采购的属性:书号、书名、出版社、供书商、数量、登记日期、顾客email

(4)客户的属性:网上ID、登录密码、名称、地址、帐户余额、信用等级

(5)订单的属性:订单号、订货日期、客户ID、书号、订书数量、金额、发货地址、发货情况

(6)供应商的属性:供应商编号、供应商基本信息、供应商供货信息、现有书目信息

6、逻辑结构设计

图书(书号,书名,出版社,价格,目录,封皮)

作者(作者名,书号,顺序号)

关键字(关键字,书号)

供应(书号,供书商)

丛书(书号,书名)

库存(书号,存货量,库存存放位置)

采购单(书号,数量,登记日期,顾客email)

客户(网上ID,登录密码,名称,地址,帐户余额,信用等级,信用额度)

订单(订单号,订货日期,客户ID,订单金额)

订单中的书(订单号,书号,数量)

发货(订单号,发货情况)

供应商(供应商编号,供应商基本信息)

供应商供货(供应商编号,供应商供货信息)

供应商现有书目(供应商编号,书号,数量)

7、细化表结构

(1)图书信息表book_info:

(2)作者信息表author_list:

(3)关键字表keywords_list:

(4)供应表provide_list:

(5)丛书情况表series_book:

(6)库存情况表reserve_info:

(7)采购表purchase_list:

(8)客户表customer_info:

(9)订单表order_list:

(10)订单中的书books_in_order:

(11)发货表delivery_info:

(12)供应商provider_list:

(13)供应商供货provider_supply:

(14)供应商现有书目provider_books:

8、创建数据库

9、创建数据表及必要的约束:

10、建立必要的视图:

11、创建必要的外键:

12、创建必要的触发器:

13、总结:

通过本次实验使我对数据库有了一个更加全面,更加深入的了解,也可以说是对本学期所学的数据库知识的一个总结,这次实验不像以前一样,只是对数据库某一部分知识的练习巩固,不仅仅是设计几张表,设计几个存储过程,触发器,而是对这些知识的一个整合,是一次综合的练习,使我对设计一个数据库的流程有了一个了解和掌握。

 

三、出现的问题及解决方案

问题:

ORDER BY关键字降序排序问题

SQL AND & OR 运算符与优先级问题

WHERE语句的特殊条件——例如is null、between and、like模糊查询等问题

Enum枚举类型的设定值问题

CHECK语句约束不起作用问题

解决方案:

参考《数据库系统概论课本》、菜鸟教程(https://www.runoob.com/sql)、CSDN博客和MySQL参考手册(https://dev.mysql.com/doc/)

  • 16
    点赞
  • 53
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
实验六 数据库原理综合实验 1 实验目的 (1) 运用所学的数据库设计技术,针对一个具体的应用系统,完成系统数据库的概念模型、逻辑模型和物理模型的设计。以巩固理论课程上所学的知识,更好地掌握数据库设计技术方法。 (2) 对前面章节所学的知识加以综合应用。 2 实验内容 给定一个应用环境,如学生选课系统、超市管理系统、某企业库存管理系统、学校图书管理系统、学校综合积分管理系统等等。(同学们课从上述选定一个题目,也可以选取一个自己较熟悉的应用环境)。完成下面的工作 2.1 数据库概念模型设计 (1) 需求分析。-对系统的语义行描述(包括功能、所需的数据及他们之间的关系和处理方法) (2) 识别系统中的实体及实体的属性,分析实体之间的联系。 (3) 设计数据库概念模型,画出E-R图。 2.2 数据库逻辑模型设计 (1) 根据数据库概念模型设计数据库的逻辑模型。-将E-R模型转化到逻辑模型 (2) 根据应用需要和规范化理论对逻辑模型行优化。 2.3 数据库物理模型设计 (1) 针对某种DBMS,设计数据库物理模型,包括表空间、表和索引等于物理存储有关的设计。 (2) 优化物理模型 (3) 生成某种DBMS的SQL语句,创建数据库及其表。 2.4 装载数据 (1) 收集真实数据或者生成模拟数据。 (2) 批量加载数据到数据库中。 (3) 设计一系列SQL语句,尤其是连接查询、嵌套查询等SQL语句,已测试数据库性能。 3 实验要求 (1) 可以借助POWERDESIGNER等系统分析与设计辅助工具行数据库设计,也可以使用WORD文件直接生成各种设计文档。 (2) 选择的数据库应用系统应该规模适中,不宜太大太复杂,可能做不完;也不宜太小太简单,甚至仅有三两个表组成。 (3) 要设计良好的数据库完整性约束。 (4) 思考题:数据库设计通常由哪些辅助工具?各有哪些优缺点? 4 实验步骤 4.1 数据库概念模型设计 (1) 需求分析。 (2) 设计数据库概念模型,画出E-R图。 4.2 数据库逻辑模型设计 (3) 根据数据库概念模型设计数据库的逻辑模型。 (4) 对逻辑模型行优化。 4.3 数据库物理模型设计 (5) 针对某种DBMS,设计数据库物理模型,包括表空间、表和索引等于物理存储有关的设计。 (6) 优化物理模型 (7) 生成某种DBMS的SQL语句,创建数据库及其表。 4.4 装载数据 (8) 收集真实数据或者生成模拟数据。 (9) 批量加载数据到数据库中。 (10) 设计一系列SQL语句,尤其是连接查询、嵌套查询等SQL语句,已测试数据库性能。 5 总结与体会 5.1 实验中出现的问题及其解决方案 5.2 总结 5.3 体会
数据库是一个用来存储和管理数据的系统,数据库系统设计综合实验C主要是指在数据库系统设计方面的综合实验。这个实验通常会包括数据库的设计、搭建、测试和优化等多个环节,旨在让学生在实际操作中掌握数据库系统设计的全流程。 数据库系统设计综合实验C的主要内容包括: 1. 数据库设计:根据实际需求,对数据库行设计,包括确定数据表的结构、设置主键、外键等约束条件,设计适当的索引等。 2. 数据库搭建:根据设计好的数据库结构,使用数据库管理系统(如MySQL、Oracle等)搭建数据库,创建数据表,插入数据等。 3. 数据库测试:对搭建好的数据库行系统测试,包括对数据的增删改查操作、性能测试、安全性测试等。 4. 数据库优化:通过分析数据库性能瓶颈等问题,行适当的优化,包括修改索引设计、优化SQL语句等。 通过这个实验,学生将能够掌握数据库系统设计的基本原理和方法,了解数据库设计的实际应用,为将来从事数据库相关工作打下坚实的基础。同时,实验还将培养学生的团队合作能力和问题解决能力,提高他们的实际操作能力。 总的来说,数据库系统设计综合实验C是一个重要的实践环节,对于学生来说具有非常重要的意义,是他们将理论知识应用到实际工作中的一个非常好的机会。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值