数据库课程设计任务J16006.docx

上传人:b****5 文档编号:30716482 上传时间:2023-08-19 格式:DOCX 页数:15 大小:31.92KB
下载 相关 举报
数据库课程设计任务J16006.docx_第1页
第1页 / 共15页
数据库课程设计任务J16006.docx_第2页
第2页 / 共15页
数据库课程设计任务J16006.docx_第3页
第3页 / 共15页
数据库课程设计任务J16006.docx_第4页
第4页 / 共15页
数据库课程设计任务J16006.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

数据库课程设计任务J16006.docx

《数据库课程设计任务J16006.docx》由会员分享,可在线阅读,更多相关《数据库课程设计任务J16006.docx(15页珍藏版)》请在冰豆网上搜索。

数据库课程设计任务J16006.docx

数据库课程设计任务J16006

数据库课程设计任务书

一、设计目的

数据库课程设计是在学生系统学习了数据库课程后,按照关系型数据库的基本原理,综合运用所学的知识,以小组为单位,设计开发一个小型的数据库管理系统。

通过对一个实际问题的分析、设计与实现,将理论与应用相结合,使学生学会如何把书本上学到的知识用于解决实际问题,培养学生的动手能力;另一方面,使学生能深入理解和灵活掌握教学内容。

二、总体要求

(1)列出系统中的实体及实体间联系;

(2)指出实体和联系的属性;

(3)画出系统E-R图

(4)将E-R图转换为关系模式;\rf

(7)根据题目要求写查询、存储过程、触发器。

(8)每人提交一份课程设计报告。

三、纪律要求

(1)上机时间,严禁迟到、早退及旷课,严禁做与课程设计无关的事情,如有违反,成绩作降级处理,情节严重者取消课程设计成绩。

(2)杜绝抄袭。

如若发现有抄袭现象,抄袭者和被抄袭者的课程设计成绩全部取消。

四、时间地点安排:

(第15周,J16006班)

时间/节次

周一

周二

周三

周四

1-6

电子阅览室1

电子阅览室1

教室

7-8

电子阅览室1

电子阅览室1

电子阅览室1

写课设报告

 

课程设计任务如下:

 

一.设计一个商品销售信息管理数据库设计

商品销售管理数据库信息如下:

一个单位包括多个部门如,人事部、财务部、销售部、后勤部、生产车间等;每个部门包含多名员工。

每个部门包含部门编号、部门名称、部门主管、部门职能说明;

每个员工包含有工号、姓名、性别、聘任日期、所属部门信息;

每种商品包含商品编号、商品名称、价格、库存数量等信息。

销售部门每个员工可以销售多种商品,每种商品可以由多个员工销售。

销售记录包括销售编号,商品编号、数量、销售日期、工号等;

每种商品可以由多个供应商供货,每个供应商包括供应商编号、供应商名称、联系电话、地址、联系人姓名等;

每个供应商可以供应多种商品,每个供应记录包括供应编号、商品编号、数量、价格、供应日期、供应商编号等;

要求:

先画出该数据库的E-R图,再转换为关系模型。

二.用T-SQL语句创建商品销售管理数据库

创建一个Sales数据库,其主数据文件逻辑名Sales_data,物理文件名f:

\学号\Sales_data.mdf,初始大小5MB,最大尺寸为50MB,增长速度1MB;数据库日志文件逻辑名称为Sales_log,物理文件名为f:

\学号\Sales_log.ldf,初始大小为2MB,最大尺寸为30MB,增长速度为5%。

三.该数据库中包括以下七个表,试写出创建每个表的T-SQL语句。

表名

Department(部门表)

列名

数据类型

空/非空

约束条件

说明

DepartmentID

tinyint

非空

主键,标识列

部门编号

DepartmentName

varchar(20)

非空

唯一

部门名称

Manager

varchar(12)

部门主管

Dep_scription

smalldatetime

备注,部门说明

补充说明

 

Employee(员工信息表)

数据类型

空/非空

约束条件

说明

char(8)

非空

主键

员工号

varchar(10)

非空

员工姓名

char

(2)

非空

默认为男,取值男或女

性别

smalldatetime

出生时间

smalldatetime

聘任时间

money

工资

tinyint

外键

部门编号,来自部门表

 

表名

Product(商品信息表)

列名

数据类型

空/非空

约束条件

说明

ProductID

char(8)

非空

主键

商品编号

ProductName

varchar(30)

非空

商品名称

Price

decimal(10,2)

单价

Stock_Number

int

库存数量

Sell_Number

int

已销售数量

补充说明

 

表名

Customer(客户信息表)

列名

数据类型

空/非空

约束条件

说明

CoutomID

Int

非空

主键、标识列

客户编号

CompanyName

varchar(20)

非空

公司名称

ContactName

varchar(10)

非空

联系人姓名

Phone

varchar(16)

非空

电话

Address

varchar(50)

地址

EMAIL

varchar(50)

EMAIL

补充说明

表名

Provider(供应商信息表)

列名

数据类型

空/非空

约束条件

说明

ProviderID

Int

非空

主键、标识列

供应商编号

ProviderName

varchar(20)

非空

供应商名称

ContactName

varchar(10)

非空

联系人姓名

ProviderPhone

varchar(16)

供应商电话

ProviderAddress

varchar(50)

供应商地址

ProviderEMAIL

varchar(50)

供应商EMAIL

补充说明

 

表名

Sell_Order(销售订单表)

列名

数据类型

空/非空

约束条件

说明

Sell_OrderID

Int

非空

主键、标识列

销售订单号

ProductID

char(8)

非空

外键

商品编号

EmployeeID

char(8)

非空

外键

员工号

CoutomID

int

非空

外键

客户编号

Sell_Number

int

订货数量

Sell_Date

smalldatetime

订货日期

补充说明

表名

Purchase_Order(采购订单表)

列名

数据类型

空/非空

约束条件

说明

Pur_OrderID

Int

非空

主键、标识列

订单号

ProductID

char(8)

非空

外键

商品编号

EmployeeID

char(8)

非空

外键

员工号

ProviderID

int

非空

外键

供应商编号

Pur_Number

int

采购数量

Pur_Date

smalldatetime

采购日期

补充说明

 

四、在该数据库完成以下任务,并写出T-SQL语句:

0.创建表间关系图

1.在员工信息表中插本人信息;

2.将商品表中所有商品的价格上调20%;

3.删除商品表中库存量为0的商品;

4.查询员工“赵军”的工资;

5.查询库存量在1000~3000的商品信息;

6.查询所有员工的最高和最低工资;

7.统计公司中男女员工人数;

8.查询所有姓张和章的员工信息;

9.查询“光明科技公司”的订单信息;

10.查询所有供应商偍供的商品情况;

11.查询员工“李冰”所在的部门名称;

12.查询高于平均工资的员工姓名、性别、和工资;

13.创建一个查看部门平均工资的视图,视图包含部门名称和部门平均工资并按平均工资降序排序;

14.创建一个统计商品销售信息视图,视图包含商品名称、订购总数量。

15.员工“王丹”收到一条“牛奶”订单,利用视图EmSell_order添加订单信息。

16.创建一个存储过程,实现根据订单号获取订单信息的功能;

17.创建一个存储过程,用于查询指定姓氏的客户信息。

18.创建一个存储过程,用于查询指定商品的接收订单总金额。

19.创建一个触发器,防止用户修改员工表中的部门编号。

20.创建一个触发器,用于实现:

当删除部门表的记录时,不允许删除表中数据并给出提示信息。

 

附件:

数据库课程设计报告模版

 

山东电子职业技术学院

数据库课程设计总结报告

 

设计题目:

图书管理信息系统

学号:

学生姓名:

系别:

计算机科学与技术系

专业:

软件技术

指导教师:

 

年月日

1.开发背景

90年代中期,由于Internet的迅速普及,使Intranet成为Internet技术在企业管理信息系统中的应用和延伸,形成了集计算机,计算机网络、数据库、分布式计算等于一体的信息技术综合体,它打破了时间和地域的界限,使信息交流变得快捷、准确,为建立现代企业管理信息系统提供了充足的条件。

企业信息管理系统在此基础上延伸、扩展,使之上下、内外全面贯通。

引入Internet后,形成了新型的浏览器/服务器(Browser/Server)结构,而传统的客户机/服务器(Client/Server)结构在这方面就远不及B/S结构。

图书馆管理信息系统是在适应市场需求的客观前提下,为了满足中小型公司或事业单位管理自己的公共图书馆而开发的。

该系统的是终目的是要将自己的图书馆放到网络上,以方便员工查阅。

2.功能描述

(描述该系统所需要完成的功能)

经过调研及分析,图书馆管理信息系统主要完成以下功能:

(1)图书信息维护:

主要完成图书馆新进图书的编号、登记、入馆等操作。

(2)读者信息维护:

主要是完成读者信息的添加、修改和删除等操作,只有是系统中的合法读者才有资格进行图书的借阅活动。

(3)借书/还书处理:

主要完成读者的借书和还书活动,记录读者借还书情况并及时反映图书的在库情况。

(4)读者借阅记录:

让每位读者能及时了解自己的借书情况,包括曾经借阅记录以及未还书记录。

(5)图书书目检索:

读者能够根据不同的信息(如书名、作者、关键词等)对图书馆的存书情况进行查找,以便快速的找到自己希望的图书。

(6)图书超期通知:

为图书管理员提供一个统计信息,能够统计出到目前为止逾期未归还的图书及相应的读者信息。

3.概念模型设计

(画出E-R图)

根据系统数据流图和数据字典,得出系统的总体概念模型(E-R)如图2所示。

图2系统的总体概念模型

4.逻辑模型设计和优化

(根据转换规则将E-R图转换为关系模式并进行优化并至少达到3NF标准)

根据系统的总体概念设计模型、E-R图向关系模式的转化规则和数据库的范式理论,得到系统优化后的逻辑模型,如表1~表5所示。

表1图书信息表(Titles表)

编号

类别

出版社

书名

作者

价格

ISBN

索书号

时间

简介

库存

表2读者信息表(Reader)

读者号

姓名

密码

性别

职别

单位

专业

年级

电话

地址

表3借阅记录表(BorrowRec)

记录号

图书号

读者号

书名

借阅时间

还书时间

是否还书

表4出版社信息表(Publisher)

出版社ID

名称

地址

表5图书类别信息表(Type)

类别ID

名称

简介

5.物理设计和实施

(根据第5部分优化后的逻辑模式使用createtable语句写出各关系模式的创建语句)

得到系统逻辑模型后,就该进行数据库的物理设计和实施数据库了,物理设计主要是要确定数据库的存储路径、存储结构以及如何建立索引等,可以采用系统的默认设置。

数据库实施主要包括在具体的DBMS中创建数据库和表的过程,有关创建数据库和关系表的SQL语句如下所示:

/*==============================================================*/

/*DataBase:

LibDB,创建数据库,数据库名称为LibDB*/

/*==============================================================*/

createdatabaseLibDB

go

/*==============================================================*/

/*Table:

BorrowRec,图书借阅记录表*/

/*==============================================================*/

createtableBorrowRec(

RecIDintnotnull,/*记录ID*/

TitleIdchar(10)notnull,/*图书ID*/

ReaderIdchar(10)notnull,/*读者ID*/

Titlechar(50)null,/*书名*/

BorrowDatedatetimenull,/*借阅时间*/

BackDatedatetimenull,/*归还时间*/

OverDateintnull,/*超期天数*/

FineMoneydecimal(5,1)null,/*罚款金额*/

IsBackbitnull,/*是否归还*/

constraintPK_BORROWRECprimarykey(ReaderId,TitleId,RecID)/*主键约束*/

go

/*==============================================================*/

/*Index:

Relationship_1_FK:

在借阅记录表读者ID属性上创建索引*/

/*==============================================================*/

createindexRelationship_1_FKonBorrowRec(

ReaderId

go

/*==============================================================*/

/*Table:

Publisher,出版商信息表*/

/*==============================================================*/

createtablePublisher(

PubIdchar(10)notnull,/*出版社ID*/

PubNamechar(30)null,/*出版社名称*/

Addresschar(30)null,/*地址*/

constraintPK_PUBLISHERprimarykey(PubId)/*主键约束*/

go

/*==============================================================*/

/*Table:

Reader,读者信息表*/

/*==============================================================*/

createtableReader(

ReaderIdchar(10)notnull,/*读者ID*/

Namechar(10)null,/*姓名*/

Pwdchar(20)null,/*密码*/

Sexchar

(2)null,/*性别*/

Positionchar(10)null,/*职别*/

Unitchar(40)null,/*单位*/

Majorchar(20)null,/*专业*/

Classchar(4)null,/*年级*/

Telchar(11)null,/*电话*/

Addresschar(30)null,/*地址*/

constraintPK_READERprimarykey(ReaderId)/*主键约束*/

go

/*==============================================================*/

/*Table:

Titles,图书信息表*/

/*==============================================================*/

createtableTitles(

TypeIdchar(10)notnull,/*类型ID*/

PubIdchar(10)notnull,/*出版社ID*/

TitleIdchar(10)notnull,/*图书ID*/

Titlechar(50)null,/*书名*/

Authorchar(20)null,/*作者*/

Pricedecimal(5,2)null,/*价格*/

ISBNchar(20)null,/*ISBN号*/

IndexNochar(30)null,/*索书号*/

PubDatedatetimenull,/*出版日期*/

Descriptionchar(1000)null,/*简介*/

StockNumintnull,/*在库数量*/

constraintPK_TITLESprimarykey(TypeId,PubId,TitleId)/*主键约束*/

go

/*==============================================================*/

/*Index:

Relationship_3_FK:

在图书信息表图书类型ID属性上创建索引*/

/*==============================================================*/

createindexRelationship_3_FKonTitles(

TypeId

go

/*==============================================================*/

/*Index:

Relationship_4_FK:

在图书信息表出版社ID属性上创建索引*/

/*==============================================================*/

createindexRelationship_4_FKonTitles(

PubId

go

/*==============================================================*/

/*Table:

Type,图书类别信息表*/

/*==============================================================*/

createtableType(

TypeIdchar(10)notnull,/*类别ID*/

TypeNamechar(20)null,/*类别名称*/

Descriptionchar(1000)null,/*类别描述*/

constraintPK_TYPEprimarykey(TypeId)/*主键约束*/

Go

6.课程设计心得体会

(写出本次课程设计的收获、体会或相关建议)

7.参考文献

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学 > 化学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1