书店销售系统数据库分析与设计(DOC)
网上图书销售系统数据库分析与设计

'网上图书销售系统分析与设计1.项目背景跟着Internet的兴起,收集已经成为当代人糊口中的一部分,越来越多的人喜欢在网上生意。
本系统便是一个基于B/S模式的收集化的图书发卖打点系统,授与的是妙技,实现了用户注册信息打点、用户信息打点、图书发卖点打点、图手札息打点、客户订单打点、购物信息打点,库存打点,动静打点等模块。
通过测试,根基实现了这个集成书籍打点、网上定购等功效于一体的图书发卖打点系统。
在Internet上通过它用户可以打破时刻和空间的限定来实现网上购书,有效地收缩了图书通顺发行枢纽,将泛博读者、图书、出版者、发行者严密地联络在一路,年夜年夜提高了图书通顺率。
它有着策划本钱低、库存是假造的、用户检索便利、地域限定少等特点。
2.系统功能结构根据网上图书销售系统的特点,可以将其分为订购人信息管理模块,书籍信息管理模块,供应商信息管理模块,管理者信息管理模块和付款接收银行管理模块5个部分,其中各部分及其包括的具体功能如图1所示。
(图1 网上图书销售系统功能结构图3.数据库设计(1)概念结构设计根据网上图书销售系统分析和设计,确定数据库的实体主要有管理员、书、仓库、供应商、订单、客户、银行等,各实体之间的管理系统如图2所示。
【图2 网上图书销售系统E-R 图(2)表设计经过E-R 向关系模型转化并进行范式优化后,得到如下的数据库表设计,如表1-8,图3_1-3_3所示。
…表1 管理员管理员ID char 10$主键 姓名varchar6 not null登录密码char10\not null表2 书书号>char8主键作者varchar6not null出版社·char10not null书籍类型char8not null书籍介绍~varchar40not null出版日期datetime默认定价{int4not null管理员ID char10外键!表3 供应商厂号char 4@主键厂名varchar20not null联系人varchar 6《not null电话char11not null地址char20!not null 表4 客户客户ID'char10主键客户名varchar6not null密码、char10not null电话char11not null联系地址·char20not null邮编char6not null)表5 订单订单号char 4~主键订单状态char3not null订购日期datetime 默认~not null付款数int4not null 付款日期datetime默认—客户ID char10外键银行编号char 10~外键表6 银行银行编号<char10主键名称varchar20not null负责人,varchar6not null电话char11not null地址—char20not null 表7 订书ID int4主键,标识订单号char 4、外键书号char8外键数目int4…not null 表8 供应ID?int4主键,标识书号char8外键厂号$4外键char总数int4not null,表9 仓库字段名类型长度备注ID int 4!主键,标识书号char8外键库存量int 4/not null管理员ID char10外键(表设计)图3_1 书—(表设计)图3_2 订单(表设计)图3_3 银行(3)视图设计—视图功能:使用查询分析器在网上图书销售系统数据库中建立一个有客户名,书名,订购日期,数目的客户购书情况的视图客户购书情况。
书店销售系统数据库分析与设计

浙江时滋挣院东方学院实验(实训)报告项目名称书店销售系统数据库分析与设计___________ 所属课程名称数据库原理及应用____________________项目类型设计、综合型 _____________________实验(实训)日期2014.5—2014.6 ________________班级12信息1班___________________________学号1220400103 1220400105 12204001101220400122 1220400125 12204001271220400139 1220400143姓名李珺茹关E章章徐莹莹巫日峥冯星傅媛徐斌林良泽分工表1需求分析(郑章章、李珺茹)书店的部门组成、各部门的业务说明、基本信息管理安全性要求与完整性要求2.概念结构设计(徐斌、林良泽)3逻辑结构设计(徐莹莹)E-R图向关系模型的转换、数据模型的优化4. 物理结构设计(巫日峥)数据库物理设计原理、相关表的物理结构5. 数据库实施(冯星)数据库建立代码、初始数据的输入、视图的建立、触发器的建立6、数据库的试运行(傅媛)7、数据库的维护目录1.3概述 ................................................................ 3. 1.4可行性分析 .......................................................... 3. 1、需求分析 1.2各部门的业务说明 ................................................. 4. 1.3基本信息管理 ..................................................... 5. 1.4安全性要求与完整性要求 .......................................... 52.概念结构设计 .......................................................... 6. 3逻辑结构设计() .................................................... 1.03.1 E-R 图向关系模型的转换 ......................................... 10 3.2数据模型的优化 ................................................. 1.1 4. 物理结构设计 . (11)4.1数据库物理设计原理 ............................................. 1.1 4.2相关表的物理结构 ............................................... 12 5. 数据库实施 . (15)5.1数据库建立代码 ................................................. 15 5.2初始数据的输入 .................................................. 17 5.3视图的建立 ...................................................... 20 5.4触发器的建立 .................................................... 21 6、数据库的试运行 22 7、 .......................................................... 数据库的维护 23 、结论及体会 (23)一、设计目的及要求1.1、 目的在科学飞速发展的今天,人们的视野越来越广,数据量急剧增加。
图书销售管理系统

图书销售管理系统 Ting Bao was revised on January 6, 20021《图书销售管理系统》数据库设计报告一、需求分析调查新华书店图书销售业务,设计的图书销售管理系统主要包括图书管理、进货、销售、统计功能。
具体说明如下:(1)图书管理:用户通过该系统能够对图书详细信息进行维护,包括添加、修改、删除。
对所有的图书进行分类,类别信息可以增加、修改、删除。
每个类别有多种图书,每种图书属于一个类别。
顾客可以通过该系统自主查询在库的图书信息。
(2)进货:根据某种书籍的库存量及销售情况确定进货数量,填写进货单,每张进货单对应一个供应商,同一供应商也可以出现在不同的进货单中,一份进货单可包含多种图书,每种图书会出现在多份进货单中,保存进货单成功后,系统会自动修改图书库存量。
(3)销售:输入顾客要买书籍的信息,自动显示此书的库存量,假如可以销售,生成销售单,一份销售单中包含多种图书,每种图书会出现在多份销售单中。
保存销售单时自动修改图书库存量。
(4)供应商管理:通过该系统可以对书店的供应商信息进行管理,包括供应商信息的添加、修改、删除。
(5)统计:根据销售情况输出统计的报表。
一般内容为每月的销售总额、销售总量及排行榜。
该系统的基本信息包括:(1)图书基本信息:ISBN号,书名,出版社,作者,出版地,单价,出版时间(2)供应商基本信息:供应商编号,供应商地址,供应数量,供应商电话,供应商名(3)用户基本信息:用户名,用户编号,用户电话,用户密码除了上述要求外,该系统还需要产生如下报表(1)进货单基本信息:进货单号,进货日期,供应数量,供应商编号,ISBN号,进货价(2)销售单基本信息:销售单号,销售日期,ISBN号,销售数量,供应商编号,单价(3)销售汇总表:每个月结束统计一张该月销售情况表,内容包括:销售总额,销售总量以及排行榜二、概念结构设计E-R全局进货环节销售环节该E-R图实体所包含的属性如下:图书:ISBN号,书名,出版社,作者,出版地,单价,出版时间供应商:供应商编号,供应商地址,供应商电话,供应商名用户:用户名,用户编号,用户电话,用户密码进货单:进货单号,进货日期,供应数量,供应商编号,ISBN号,进货价销售单:销售单号,销售日期,ISBN号,单价该E-R图转换的关系模式如下:(1)图书(ISBN号,书名,出版社,作者,出版地,金额,出版时间)(2)供应商(供应商编号,供应商地址,供应商电话,供应商名)(3)用户(用户名,用户编号,用户电话,用户密码)(4)进货单(进货单号,进货日期,供应数量,供应商编号,ISBN号,进货价)(5)销售单(销售单号,销售日期,ISBN号,销售数量,金额)(6)销售汇总(销售单号,总金额,销售单数量)三、逻辑结构设计四、数据库实现create table books(isbn char(15)primary key not null, bookname char(30)not null,aothor char(10)not null,pubplace char(20)not null,price char(8)not null,pubhouse char(30)not null,pubtime smalldatetime not null)create table gong(gongid char(10)primary key not null,gongname char(20)not null,gongplace char(30)not null,gongphone char(11)not null)create table us(usname char(10)not null,usid char(10)not null primary key, usphone char(11)not null,password char(10)not null)create table purchase(purid char(10),purdate smalldatetime,purcount int,gongid char(10),isbn char(15),purprice char(8),primary key(purid,isbn,gongid),foreign key(isbn)references books(isbn), foreign key(gongid)references gong(gongid) )。
网上书店销售管理系统数据库设计

加、更新客户订单:为了满足客户通过电话一次下订单和更改订单的
需求;管理员资料修改。
1.2用户模块
登录信息;在购物车中要求显示购买书名号、数量、并显示总消
费情况;客户可在购物车中直接修改购买图书的数量,其他信息不允
许随意修改;查询书籍信息:查询结果要显示书名号、作者、出版社
和价格;客
户可在下订
单后的12小
accall
表2-5 校园卡充值记录
数据项含义
账户充值时间 账户原有余额 账户充值金额 账户现存余额 账户累计充值金额
与其它数据 项的关系
存储结构
char(20)
int
int
int
int
别名
冲值时间 原余额 冲值金额 现余额 累计金额
数据项 编号 D6-1 D6-2 D6-3 D6-3 D6-4
数据 项名 bbtime bbno bbname brtime bosettle
处理编号 处理功能
处理过程
PR-1
客户购物涉及 商品基本信息模块、客户基本信息模块、客户购物车
的功能模块 基本信息模块、客户订单信息模块、网上支付基本信
息模块、交易基本信息模块:先确定购物所涉及的功
能模块;然后,确定数据流向;最后显示购买情况
2.5数据库的实施、运行和维护 在进行概念结构设计和物理结构设计之后,对目标系统的结构、 功能已经分析得较为清楚,但这还只是停留在文档阶段。数据系统设 计的根本目的,是为用户提供一个能够实际运行的系统,并保证该系 统的稳定和高效。要做到这点,则必须进行下一步工作,就是数据库 的实施、运行和维护。 该阶段主要包括: 2.5.1数据库的实施 数据库的实施主要是根据逻辑结构设计和物理结构设计的结果, 在计算机系统上建立实际的数据库结构、导入数据并进行程序的调 试。 用具体的DBMS提供的数据定义语言(DDL),把数据库的逻辑结 构设计和物理结构设计的结果转化为程序语句,然后经DBMS编译处 理和运行后,实际的数据库便建立起来了。 2.5.2 数据库的试运行 当数据装入数据库以后,进入数据库的试运行阶段,数据库的试 运行也称为联合调试。数据库的试运行对于系统设计的性能检测和评 价是十分重要的, 该阶段重点执行对数据库的各种操作,实际测量系 统的各种性能,检测是否达到设计要求。通过该阶段的运行与测试, 可以检验数据库系统设计是否合理,运行是否安全、高效。 2.5.3数据库的维护 数据库系统投入正式运行,意味着数据库的设计与开发阶段的基 本结束,运行与维护阶段的开始。数据库的运行和维护是个长期的工 作,是数据库设计工作的延续和提高。
书店数据库管理系统需求分析与设计

以我给的标题写原创文档,最低1200字,要求以Markdown文本格式输出,不要带图片和AI、人工智能、Markdown、GPT等关键词,标题为:书店数据库管理系统需求分析与设计# 书店数据库管理系统需求分析与设计## 一、引言书店作为销售图书的场所,在管理图书信息和销售数据方面存在着一定的复杂性。
为了提高书店的管理效率和服务质量,设计并实现一个书店数据库管理系统是十分必要的。
本文将对书店数据库管理系统进行需求分析与设计,以实现对图书信息、销售业务和库存管理的有效整合和优化。
## 二、系统需求分析### 1. 功能需求1.1 图书信息管理:包括图书的基本信息(书名、作者、出版社、价格等)录入、修改和删除功能。
1.2 销售业务管理:包括销售记录的录入、查询、统计、退货等功能,支持按日期、图书、销售员等条件进行查询和统计。
1.3 库存管理:实时更新库存信息,提醒库存不足或过多的情况,支持库存盘点和报表输出。
### 2. 数据需求2.1 图书信息数据库:存储图书的基本信息,支持对图书信息的增删改查操作。
2.2 销售记录数据库:存储销售记录数据,包括销售日期、图书名称、销售数量、销售员等信息。
2.3 库存信息数据库:存储库存信息,包括库存数量、进货日期、图书名称等信息。
### 3. 界面需求3.1 用户界面:系统需要提供友好的用户界面,支持用户登录和权限管理,分别提供管理员和普通用户的功能操作界面。
3.2 操作界面:界面需要清晰明了地展示图书信息、销售记录和库存信息,支持快捷查询和报表导出功能。
## 三、系统设计### 1. 概要设计根据需求分析,书店数据库管理系统采用客户端-服务器结构架构,前端采用Web界面,后端采用MySQL数据库作为数据存储。
### 2. 数据库设计2.1 图书信息表设计:包括书籍ID、书名、作者、出版社、价格等字段。
2.2 销售记录表设计:包括销售记录ID、销售日期、图书ID、销售数量、销售员ID 等字段。
数据库原理及应用-书店管理系统数据库设计

目录1数据库需求分析 (2)1.1调查对象基本情况说明 (2)1.2数据库系统设计目标及具体功能 (2)2数据库概念结构设计 (2)2.1实体及属性说明 (2)2.2 E-R图设计 (3)3数据库逻辑结构设计 (3)3.1数据库逻辑结构设计 (3)3.2主要表的作用说明及内容图示 (4)4主要视图设计 (6)5安全体系设计 (8)6典型需求的处理过程及命令 (9)7总结 (10)7.1设计中遇到的主要问题及解决方法 (10)7.2设计方案的主要优点及不足 (11)7.3收获及建议 (11)参考文献 (11)书店管理系统数据库设计1数据库需求分析1.1调查对象基本情况说明书店正常经营所涉及的的基础信息,如:库存、图书、进销书、业务员信息等是一个书店最基本、最重要的信息,需要有完整的图书信息及价格定位,详细的进书及销售情况的统计,图书库存情况以及工作人员的基本资料,具备这些资料,书店才能正常经营,一个最基本的书店管理系统应具备功能来存储并管理这些资料。
各子系统应能根据实际情况来录入、更改、删除相关数据。
不同的工作人员应拥有有对不同子模块数据的修改、管理职能。
1.2数据库系统设计目标及具体功能该系统通过相关子模块功能来实现对书店基本信息的存储和管理。
实现对各个领域的数据查询、统计、更新。
相关子模块的功能为:入库信息——进新书时,对具体书目的入库工作做详细记录,管理书店的进书业务;书目信息——当书店进新书后,存储这些书目的基本信息,以便维护书目信息,查阅并管理书目;业务员信息——存储书店工作人员的基本情况资料和职能,以便多书店人力资源的方便有效管理;库存情况——对书店现有书籍的库存情况进行记录,并随销售业务的进行而实现数据变更,为书目的进销提供参考依据;价格信息——为方便的分析不同书目的盈利情况和总利润及书店后期经营的价格安排提供参考;销售信息——提供经营做记录,以了解分析经营情况;权限设置——该项设置是针对书店工作人员而设,对不同工作性质的业务员赋予对系统分模块的更新管理权利,以实现书店的顺利经营。
网上书店系统的分析与设计

前端功能实现
根据需求分析,实现用户登录、图书展示、 购买流程等前端功能。
与后端交互
通过API接口与后端进行数据交互,实现前 后端分离的开发模式。
测试与部署
单元测试
对每个模块进行单元测试,确保 每个模块的功能正常。
集成测试
对整个系统进行集成测试,确保各 个模块之间的协调工作。
网上书店系统的分析与设计
目录
• 系统概述 • 需求分析 • 系统设计 • 技术实现 • 系统评估与优化
01 系统概述
系统简介
01
网上书店系统是一个基于互联网 的电子商务平台,旨在提供方便 快捷的图书购买服务。
02
该系统通过在线展示、查询、购 买等功能,满足用户对图书的需 求,提供个性化的推荐服务,提 升用户体验。
浏览、购买等操作。
图书浏览
用户需要能够浏览不同分类的 图书,了解图书的详细信息, 如书名、作者、出版社、简介 等。
购买图书
用户需要能够将选定的图书加 入购物车,并完成购买操作。
个人信息管理
用户需要能够修改个人信息, 如姓名、邮箱、手机号等要提供注册和登录功能,支持 用户创建账户并登录系统。
可用性
评估系统的用户界面和交互设计,确保用户能够方便地使用系统。
系统优化建议
数据库优化
通过优化数据库查询语句、 使用索引等方法提高数据访
问速度。
1
负载均衡
采用负载均衡技术,将用户 请求分发到多个服务器上,
提高系统处理能力。
缓存技术
使用缓存技术存储常用数据 ,减少对数据库的访问次数 。
代码优化
优化代码结构,提高系统运 行效率。
书店销售管理系统数据库设计

课程设计课程名称《数据库系统原理》课程设计题目书店销售管理系统专业班级姓名成绩指导老师2019 年 12 月 30 日至 2019 年 1月 3日一、课程设计目的与任务《数据库系统原理课程设计》是针对计算机专业基础课《数据库系统原理》开设的课程设计,目的是使学生通过本课程设计之后,对数据库设计的基本概念、基本原理和优化技术有较全面的了解和领会,并能操作当前流行的DBMS,了解数据库在计算机应用系统的作用,独立地开发实现一个小型的基于DBMS上的应用系统。
结合具体的开发案例,理解并初步掌握数据库系统需求分析、概念结构设计、逻辑结构设计、物理结构设计、应用功能设计(视图,索引,游标,存储过程,触发器等)数据录入及测试等系统设计与系统实施及维护管理的主要环节和步骤以及软件文档的制作能力。
二、课程设计的题目与基本要求1.设计题目:书店销售管理系统数据库设计2.基本要求:(1)图书入库管理:维护入库图书信息(如图书编号、书名、作者、价格、图书分类、出版社等),自动计算库存。
(2)图书查询统计:按图书分类,出版社、书名、作者等条件查询图书的详细信息。
(3)销售管理:销售过的图书都记录在销售列表中,方便统计收入。
图书销售后,实时记录图书库存,按每天统计销售额、按每个月或季度统计销售额,并能根据销售数量统计生成畅销书名单。
(4)设计报告内容包括:基本原理、设计方案的选择与确定,详细的设计过程及结果做出评价,分析存在的问题,提出改进意见并写出心得体会。
四、课程设计考核及评分标准1.设计报告要求课程设计报告要求逻辑清晰、层次分明、书写整洁。
格式包括标题、提要、正文(包括①设计项目要求与说明。
②数据模型分析。
③软件流程分析。
④调试分析。
⑤实验数据分析。
⑥答辩。
⑦成绩评定。
)附录(图纸、程序清单或软盘)。
设计报告须每人一份,独立完成。
2.图纸要求系统结构框图、概念模型图等。
注:成绩等级:优(90分—100分)、良(80分—89分)、中(70分—79分)、及格(60分—69分)、60分以下为不及格。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
东方学院实验(实训)报告项目名称书店销售系统数据库分析与设计所属课程名称数据库原理及应用项目类型设计、综合型实验(实训)日期2014.5—2014.6班级12信息1班学号1220400103 1220400105 12204001101220400122 1220400125 12204001271220400139 1220400143姓名李珺茹郑章章徐莹莹巫日峥冯星傅媛徐斌林良泽分工表1、需求分析(郑章章、李珺茹)书店的部门组成、各部门的业务说明、基本信息管理安全性要求与完整性要求2.概念结构设计(徐斌、林良泽)3逻辑结构设计(徐莹莹)E-R图向关系模型的转换、数据模型的优化4.物理结构设计(巫日峥)数据库物理设计原理、相关表的物理结构5.数据库实施(冯星)数据库建立代码、初始数据的输入、视图的建立、触发器的建立6、数据库的试运行(傅媛)7、数据库的维护目录一、设计目的及要求 (2)1.1、目的 (2)1.2、背景 (2)1.3概述 (2)1.4可行性分析 (2)二、课程设计内容说明 (3)1、需求分析 (3)1.1书店的部门组成 (3)1.2各部门的业务说明 (3)1.3基本信息管理 (4)1.4安全性要求与完整性要求 (5)2.概念结构设计 (5)3逻辑结构设计() (9)3.1 E-R图向关系模型的转换 (9)3.2 数据模型的优化 (10)4.物理结构设计 (10)10115.数据库实施 (14)5.1数据库建立代码 (14)5.2初始数据的输入 (16)5.3视图的建立 (19)5.4触发器的建立 (20)6、数据库的试运行 (22)7、数据库的维护 (22)三、结论及体会 (22)一、设计目的及要求1.1、目的在科学飞速发展的今天,人们的视野越来越广,数据量急剧增加。
过去人们把数据存放在文件柜里,现在人们借助计算机和数据库技术科学地保存和管理大量的复杂数据,以便能方便而充分地利用这些宝贵的信息资源。
本系统的设计目标就是要为中小型书店提供一套运行稳定、安全可靠、操作简便的管理系统。
帮助书店销售业务处理日常工作业务,规范管理各项工作和操作流程。
从根本上改变以前那种旧的管理模式,真正提高管理和服务的水平。
1.2、背景随着社会信息量的迅速增长,计算机处理的数据量不断增加,在我国,管理信息系统是计算机应用最广泛的领域之一。
随着我国经济建设突飞猛进,管理科学化与管理手段的现代化已经提到非常重要的地位,企、事业单位为了提高自身的管理水平和竞争能力,纷纷投入人力物力,开发适合本单位需求的管理信息系统。
中国的信息化沿着企业信息化和政府信息化这两根链条正在飞速的发展,在全国的各级教育单位中,都在进行管理方式的改革,由以前的人工管理方式在向现在的人工加计算机技术的过渡中,在现在的这种模式中可以很大的提高工作人员的工作效率,提高了正确性。
1.3概述这次所选的设计题目是书店销售管理系统。
数据库环境选择SQL server 2005中文版。
1.4可行性分析管理上可行性书店管理其实是不能说是简单,但是很琐碎。
每天的销售还有最后的书本数量的核对会耗费大量的人力和时间。
而进行计算机信息技术上的自动化管理不仅提高了管理的准确性而且省时省力。
经济上可行性只要这个书店管理系统就好,不需要额外的支出。
技术上可行性在大学我们已经学习了有关数据库,c语言等一系列计算机技术,在相对宽裕的时间内是可以编写出程序的。
二、课程设计内容说明1、需求分析1.1书店的部门组成对于书店来说,目的是销售图书,所以包含销售部门;同时为书店进书的部门称为进货部门。
1.2各部门的业务说明1.2.1销售部门对图书销售情况进行结算,对客户资源进行管理。
如,对某一段时间的图书销售情况进行统计;对订书的顾客信息进行记录,统计等。
因此,需要销售人员,图书,购书实体:顾客,以及联系:销售,购买。
1.2.2进货部门记录图书供应商的信息,以便获得最新的图书进货信息。
通过供应商,为书店购进新的图书。
需要实体供货商,联系:进货。
1.3基本信息管理1.3.1该模块实现图书情况的分类,包括书号,书名,作者,售价等。
便利店员查找书籍,为顾客提供更好的建议。
1.3.2销售情况管理该模块对每本出售的书本进行统计,记录每本书售出的日期,购买人,经办人和销售的金额。
在这里店员可以很方便的加入销售记录,修改记录。
便于每天书店清账。
而且在这里总金额的计算公式是事先设定好的,这样避免了人为的计算错误。
1.3.3销售、进货、书本信息管理销售、进货和书本库存三者结合起来管理整个书店的图书数量。
库存实现对书店剩余书本的管理,知道什么书还剩几本。
而进货清楚让人知道进了什么书,售价是什么还有哪个供应商提供的。
而且在这里总金额的计算公式是事先设定好的,这样避免了人为的计算错误。
1.3.4书店会员管理实现系统相关会员信息的注册及身份,同时也提供对应会员的资料更新。
该模块还可以收集会员相关的消费额度,提供不同的折扣力度。
1.3.5书店职员管理实现书店职员的相关的管理,收集每个员工的相关信息,更好的了解员工还有实现不同职位不同的工资管理。
1.4安全性要求与完整性要求安全性要求:系统应设置访问用户都预先约定好一个计算过程或者函数,鉴别用户身份时,系统提供一个随机数,用户根据自己预先约定的计算过程或者函数进行计算,系统根据用户计算结果是否正确进一步鉴别用户身份;系统应对不同的访问级别,限制访问用户可查询和处理数据的类别和内容;系统应对不同用户设置不同的权限,区分不同的用户,如区分会员,职员。
完整性要求:各种信息记录的完整性,信息记录内容不为空,主码值唯一;列值非空,列值唯一,列值满足一个布尔表达式;用户的操作违背了完整性约束条件时,采取一定的动作,如拒绝执行该操作;各种数据间相互联系的正确性;相同的数据在不同的记录中的一致性。
2.概念结构设计部分E-R图图2.1 书本基本信息E-R图图2.2供应商信息E-R图图2.3 职工信息E-R图图2.4会员信息E-R图图2.5销售信息E-R图图2.6进货信息E-R图总体E-R图3逻辑结构设计3.1 E-R图向关系模型的转换逻辑设计的目的是把概念设计阶段设计的全局E-R模式转换层与选用的具体机器上DBMS锁支持的数据模型相符合的逻辑结构。
逻辑设计的步骤主要步骤有以下五步:(1)初始模式的形成(2)自模式设计(3)应用程序设计梗概(4)模式评价(5)修正模式E-R图向关系模型转换,首先要进行数据的规范化。
所谓规范化是指在一个数据结构中没有重复出现的项组。
规范化是在关系数据库中减少数据冗余的过程。
3.1.1实体书本(书号,书名,作者,价格,出版社,出版日期,类别,库存数量)属于BCNF 供应商(供应商代号,供应商名字,联系人,电话,地址)属于BCNF 员工(工号,ID,姓名,电话,住址,职位,性别,年龄)属于BCNF 会员(会员号,姓名,年龄,电话,累积消费,折扣力度,入会时间,性别)属于BCNF 3.1.2关系进货(书号,时间,供应商代号,工号,书名,进货单号,金额,数量,总价)属于BCNF销售(书号,销售单号,书价,购买者,工号,折扣,时间,数量)属于3NF3.2 数据模型的优化关系模式会员号,姓名,书名,供应商号,职工号不存在非主属性对主属性的部分函数依赖,也不存在传递函数依赖,已经达到了3NF,但是销售关系模式、进货关系模式、库存信息关系模式中存在着一些数据冗余,现将四个关系模型进行合并,消除冗余,优化为:进货(书号,时间,供应商代号,工号,书名,进货单号,金额,数量)4.物理结构设计4.1数据库物理设计原理数据库物理设计阶段的任务是根据具体计算机系统(DBMS和硬件等)的特点,为给定的数据库系统确定合理的存储结构和存取方法。
所谓的“合理”主要有两个含义:一个是要使设计出的物理数据库占用较少的存储空间,另一个对数据库的操作具有尽可能高的速度。
主要体现在后者。
4.1.1建立索引:根据本系统的特点,采用B+树索引存取方法建立索引对图书,会员,职员,供应商,进货,销售和库存建立索引①对图书,会员,职员,销售建立组合索引②对进货,销售,图书建立组合索引③对图书,供应商,进货建立组合索引对其进行的操作:①查找查找以典型的方式进行,类似于二叉查找树。
起始于根节点,自顶向下遍历树,选择其分离值在要查找值的任意一边的子指针。
在节点内部典型的使用二分查找来确定这个位置。
②插入节点要处于违规状态,它必须包含在可接受范围之外数目的元素。
首先,查找要插入其中的节点的位置。
接着把值插入这个节点中。
如果没有节点处于违规状态则处理结束。
如果某个节点有过多元素,则把它分裂为两个节点,每个都有最小数目的元素。
在树上递归向上继续这个处理直到到达根节点,如果根节点被分裂,则建立一个新根节点。
为了使它工作,元素的最小和最大数目典型的必须选择为使最小数不大于最大数的一半。
③删除首先,查找要删除的值。
接着从包含它的节点中删除这个值。
如果没有节点处于违规状态则处理结束。
如果节点处于违规状态则有两种可能情况:它的兄弟节点,就是同一个父节点的子节点,可以把一个或多个它的子节点转移到当前节点,而把它返回为合法状态。
如果是这样,在更改父节点和两个兄弟节点的分离值之后处理结束。
它的兄弟节点由于处在低边界上而没有额外的子节点。
在这种情况下把两个兄弟节点合并到一个单一的节点中,而且我们递归到父节点上,因为它被删除了一个子节点。
持续这个处理直到当前节点是合法状态或者到达根节点,在其上根节点的子节点被合并而且合并后的节点成为新的根节点。
4.1.2存储结构确定数据库的存储结构主要指确定数据的存放位置和存储结构,包括确定关系、索引、日志、备份等的存储安排及存储结构,以及确定系统存储参数的配置。
将日志文件和数据库对象(表、索引等)分别放在不同的磁盘,可以改进系统的性能,提高系统的安全性。
所以,系统应将日志文件和数据文件存放在不同磁盘上。
4.2 相关表的物理结构表4.1书本物理结构表4.2供应商物理结构表4.3职员物理结构表4.4会员物理结构表4.5销售物理结构5.数据库实施5.1数据库建立代码5.1.1数据库的创建(sql语句代码)create database bookstroeuse bookstroe5.1.2表的创建书本信息关系表的创建create table书本(书号char(5)not null primary key,书名varchar(30)not null,作者char(10),价格decimal(5,2),出版社varchar(6)not null,出版日期smalldatetime,类别char(5)not null,库存数量int check(库存数量>=0),)供应商信息关系表的创建create table供应商(供应商代号varchar(6)not null primary key,供应商名字varchar(20)not null,联系人char(10)not null,电话varchar(13)not null,地址varchar(30),)员工信息关系表的创建create table员工(工号varchar(6)not null primary key,姓名Char(10)not null,性别varchar(2)not null check(性别='男'or性别='女'), 年龄varchar(12),电话varchar(13)not null,ID varchar(18)not null,住址varchar(30),)会员信息关系表的创建create table会员(会员号varchar(6)primary key not null,姓名char(10)not null,性别varchar(2)not null check(性别='男'or性别='女'),年龄varchar(12),入会时间datetime not null,折扣char(5)not null check(折扣in('0.90','0.80','0.70')),累计消费decimal(5,2),电话varchar(12)not null,)销售信息关系表的创建create table销售(销售单号char(6)not null primary key,书号char(5)not null,会员号varchar(6),折扣decimal(5,2)not null check(折扣in('1','0.90','0.80','0.70')), 书价decimal(5,2)not null,工号varchar(6)not null,时间datetime not null,销售数量int check (销售数量>=1),销售总价as折扣*销售数量*书价,foreign key(会员号)references会员(会员号),foreign key(书号)references书本(书号),foreign key(工号)references员工(工号),)进货信息关系表的创建create table进货(进货单号char(6)not null primary key,供应商代号varchar(6)not null,书名varchar(30)not null,书价decimal(5,2)not null,时间smalldatetime not null,进货数量int check (进货数量>=1),工号varchar(6)not null,总价as书价*进货数量,foreign key(书号)references书本(书号),foreign key(供应商代号)references供应商(供应商代号),foreign key(工号)references员工(工号),)5.1.3各个表的关系图图5.1.3数据库关系图5.2初始数据的输入数据库以及表创建之后,要输入一些实际的数据。