数据库导论课程设计-商品存销数据库操作及图书发行管理系统的设计

这篇博客详细记录了一次数据库导论课程设计的过程,包括商品存销数据库的创建与操作,以及图书发行管理系统的分析与设计。设计涵盖了SQL语句的运用,如创建表、添加约束、数据操作与查询等,还涉及了E-R图转换为关系模式、数据库范式分析、索引创建以及多表查询等。此外,博主分享了在设计过程中遇到的问题和解决方法,以及对数据库理论知识的反思与巩固。
摘要由CSDN通过智能技术生成

课程设计说明书

课程设计名称:    数据库导论课程设计

学 院 专 业: 

班        级:         

学 生 姓 名:          

指 导 教 师:          

2022年  12  月  11  日

课 程 设 计 任 务 书

课程设计题目:

商品存销数据库操作及图书发行管理系统的设计

起止日期:2022/12/12-2022/12/16

设计地点:线上

设计任务要求:

一、商品存销数据库操作

创建商品存销数据库GSCS和库中的4张表:

商品表(编号,名称,仓库编号,单价,数量)

仓库表(编号,地址,负责人,电话)

客户表(编号,姓名,地址,电话)

售货表(客户编号,商品编号,售出时间,单价,数量,应付金额)

利用T-SQL语句,在SQL Server Management Studio(SSMS)上完成题目要求的各种操作,包括数据库及表结构的创建,修改和删除;数据的增加、删除、修改以及查询,对于查询,涉及单表、多表连接、嵌套等多种查询方式;索引的创建与使用;完整性机制的定义;视图的定义及查询等。

二、图书发行管理系统的设计

1、了解系统的功能。

2、掌握数据库系统的设计步骤和过程,包括:概念模型(E-R图)的设计,逻辑模型(关系模式)的设计,概念模型向逻辑模型的转换。

3、进一步加深理解关系模式的规范化理论。

具体时间安排:

12月12日-12月16日上机完成题目;

12月16日答辩;

课设报告课后时间完成,12月16日晚提交报告的电子版。

注:此任务书由指导教师在课程设计前填写,发给学生作为本门课程设计的依据。

详 细 要 求

一、商品存销数据库操作(利用SQL语句实现)

  1. 创建商品存销数据库GSCS。
  2. 创建GSCS中表如下:

商品表goods(编号gno,名称gname,仓库编号sno,单价gprice,数量gamount)

仓库表store(编号sno,地址sadd,负责人smanager,电话spnone)

客户表customer(编号cno,姓名cname,地址cadd,电话cphone)

售货表sale(客户编号cno,商品编号gno,售出时间sdate,单价gprice,数量samount,应付金额smoney)

要求:① 表中数据类型自拟;②定义每个表的主码,有外码的定义参照完整性约束;③仓库表的地址唯一;④仓库表和客户表的电话不允许为空。

  1. 将所创建的GSCS数据库的客户表增加性别“csex”列。
  2. 向客户表插入自己所在班级的3名同学的真实信息(包括自己)。
  3. 将商品表中的每种商品的价格打7折。
  4. 将商品表中价格打7折后低于700元的商品删除。
  5. 查找价格在45-390元之间的商品详细信息。
  6. 查找仓库地址以“主区”开头的仓库负责人及电话。
  7. 在仓库表上按照仓库地址建立唯一索引。
  8. 查询Cus666号客户购买商品的应付金额。
  9. 查询售货表的详细情况,查询结果按照应付金额的升序排序,同一应付金额的按照数量的降序排序。
  10. 计算ZC10号仓库所存商品的总数量。
  11. 查询家住跟自己家小区同名的客户购买商品的数量(连接查询和嵌套查询)。
  12. 查询自己购买商品的编号及数量。
  13. 查询自己购买的商品名称,商品价格,数量及应付金额。
  14. 查询单价最低的商品名称。
  15. 建立视图BXCP,实现查询存储在ZC15号仓库的商品名称及数量。
  16. 在BXCP视图上查询存储在ZC15号仓库的商品总数量。
  17. 查询自己负责的仓库数目。
  18. 查询负责仓库数目不超过4的负责人姓名及电话。
  19. 查询购买商品应付金额最高的客户编号。
  20. 查询同时购买PP241号商品和PP526号商品的客户编号。
  21. 查询Customer28号客户或者Customer39号客户购买的商品编号。

二、图书发行管理系统的设计

至少涉及到图书、出版社、作者、发行员、仓库、仓库管理员等信息,可以不仅限于这些信息。请完成如下的分析和设计:

1、查阅相关资料,了解管理的业务流程,说明系统预计完成哪些功能。

2、根据你了解到的业务语义,以及预计完成的功能,确定实体,实体属性,联系,联系属性,联系类型,并画出E-R图。

3、把E-R图转换为相应的关系模式,说明这样转换的理由;请指出主码,从函数决定关系角度说明确定主码的理由;如果有外码,请指出外码,并给出确定外码的理由。

4、对每个关系模式,分析主码对非码属性的函数决定关系,判断所属范式,给出判断的理由;对于不是3NF的关系模式进行分解,使得每个关系模式都属于3NF。

5、根据你的设计,在平台上建立库、表,定义主码,外码,理解实体完整性和参照完整性。

6、创建合适的索引,以便加快查询速度。

7、根据预计完成的功能,设计至少10个查询,涉及单表,连接,嵌套,视图以及分组统计等内容。    

一、设计目的

我希望通过本次实验,能够加深我对SQL Server 2019操作环境的理解,更进一步地掌握SQL语句的使用以及创建数据库和表的基本操作和数据的输入、修改和删除操作。

我希望结合这次课设,对之前所学的数据库理论知识进行总结与归纳,并将所学到的理论知识运用到课程设计过程中去,包括单表,连接,嵌套,视图以及分组统计等内容以及概念模型(E-R图)的设计,逻辑模型(关系模式)的设计,概念模型向逻辑模型的转换。

我希望在设计报告的过程中,通过对排版的标准化,提前了解毕业论文的排版格式,如图片的编号、行距、字号等等。

我第一次接触SQL Server数据库管理系统是在几周前的一次数据库实验的时候,通过那段时间的实验,我对数据库产生了很大的兴趣,所以我认为在接下来的数据库课程设计当中,我能更进一步地去了解数据库管理系统,在数据库课程设计的过程中,如果认真去一步一步实践,都能够有很多收获,不光是对理论知识的巩固,在动手操作的过程中还在锻炼我们的自我反思、自我纠错的能力。

之前老师说过,培养我们的计算机思维模式也是教学目标之一,我相信,通过数据库课程设计,我的计算机专业思维将会得到很大的提升,对数据库及其管理系统SQL server将会有更深层次的理解。

我相信,在接下来的数据库课程设计过程当中,我将会不断积累经验,对于一些基本的问题,自己将会有能力自己解决和反思,在以后的工作当中,数据库课程设计的这段经历将会是我事业方面的一大助力。

二、商品存销数据库操作

1.创建商品存销数据库GSCS。

CREATE DATABASE GSCS

图2.1 创建GSCS数据库结果图

2.创建GSCS中表如下:

商品表goods(编号gno,名称gname,仓库编号sno,单价gprice,数量gamount)

仓库表store(编号sno,地址sadd,负责人smanager,电话spnone)

客户表customer(编号cno,姓名cname,地址cadd,电话cphone)

售货表sale(客户编号cno,商品编号gno,售出时间sdate,单价gprice,数量samount,应付金额smoney)

要求:① 表中数据类型自拟;②定义每个表的主码,有外码的定义参照完整性约束;③仓库表的地址唯一;④仓库表和客户表的电话不允许为空。

USE GSCS

CREATE TABLE goods

(gno nchar(4) primary key,

gname varchar(50) NULL,

sno nchar(4) NOT NULL,

gprice int,

gamount int,

)

GO

图2.2 创建goods表结果图

USE GSCS

CREATE TABLE store

(sno nchar(4) primary key,

sadd varchar(50) unique,

smanager varchar(50) NOT NULL,

sphone varchar(50) NOT NULL,

)

GO

图2.3 创建store表结果图

USE GSCS

CREATE TABLE customer

(cno n

  • 7
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

青竹小轩_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值