网上书店数据库设计+详细具体
数据库设计-《网上书店系统》Word版

目录1 . 系统需求分析 (2)1.1 系统基本功能描述 (2)1.2 系统数据流图 (2)1.2.1 数据流分析 (2)1.2.2 数据字典 (3)1.2.2.1 数据项 (3)1.2.2.2 数据结构 (4)2 . 系统设计 (5)2.1 数据库设计 (5)2.1.1 概念结构设计 (5)2.1.2 逻辑结构设计 (7)2.2 系统物理设计 (10)11 系统需求分析1.1 系统基本功能描述网上书店系统是依据网上书店能够在线出售图书和管理需求而进行设计的,目的是实现在线接受客户订单、书店信息管理的功能。
需要在线购买图书的客户能够通过网上书店系统查询所需要的图书是否有售并能够查询有售图书的基本信息(比如图书名称、作者、出版社等)。
如果客户查询到所需并且有售的图书,能够在线下达订单,然后提交给数据库,并且客户能够查询自己的订单的处理情况。
同时,客户应该能够维护自己的信息(比如修改自己的收货地址、联系方式等)。
网上书店系统应该至少拥有一个管理员。
管理员能够维护在售图书的基本信息(比如图书信息的增加、删除、修改等),并且能够对图书进行分类管理。
同时,管理员能够维护客户的信息,能够审核客户提交的订单以确认或删除订单。
1.2系统数据流图通过对系统需求进行分析,我们确定系统中有两类用户:管理员和客户。
各类用户的具体描述如下:(1)管理员描述:管理员负责后台管理。
包括增加、删除、修改图书信息,对图书进行分类管理;维护客户信息(增加和删除客户账号);审核订单并确认合法订单或删除非法订单。
(2)客户描述:客户可以查询有售图书的基本信息;可以维护自己的信息;可以进行网上订书;可以查询订单的处理情况。
1.2.1数据流分析根据分析,我们可以得到系统的数据流图。
(1)网上书店系统顶层数据流图如图1-1所示。
1.2.2 数据字典根据数据流程分析,对系统数据进行分析和汇总,建立系统数据字典。
下面列出部分数据字典内容。
1.2.2.1 数据项(1)管理员① {管理员编号,每位管理员在系统中的唯一编号也是管理员登陆的账号名,char(7)}② {管理员姓名,char(10)}③ {管理员登陆密码,char(10)}(2)客户① {客户编号,每位客户在系统中的唯一编号,char(7)}② {客户姓名,char(10)}③ {地址编号,客户有多个地址时每个地址的编号,char(7)}④ {地址,客户收货地址中某个具体地址,varchar(20)}⑤ {联系方式,客户的电话号码,char(15)}⑥ {账户余额,客户购书账户的余额,float(7)}⑦ {登陆密码,char(10)}(3)订单① {订单号,唯一标识一张订单的编号,char(7)}② {订单日期,生成订单的时间,datetime,取值为提交订单的时间}③ {收货人姓名,查收图书的人的姓名,char(10),同客户姓名}④ {收货人联系方式,收货人的电话号码,char(15),同联系方式}⑤ {发货地址,图书送达的目的地,varchar(100),是客户收货地址中的一个}⑥ {管理员编号,审核该订单的管理员的编号,char(7),同管理员编号}(4)订单细则① {细则号,唯一标识一个订单细则,char(7)}② {图书编号,订单所包含的图书的编号,char(7),同图书信息中的图书编号}③ {订购数量,购买同本图书的数量,smallint,取值不大于此本图书的库存余量}④ {发货状况,已订购图书的发货情况,varchar(100)}(5)图书信息① {图书编号,唯一标识一款图书的编号,char(7)}② {图书名,图书的题名,varchar(20)}③ {作者,图书的作者,char(10)}④ {出版社,图书的出版方,varchar(20)}⑤ {图书类别,图书的分类,varchar(20)}⑥ {库存余量,当前书店此款图书的剩余量,smallint,当前库存量=上次库存量-售出数量}⑦ {图书价格,图书的售价,float(5),图书价格大于零}1.2.2.2 数据结构(1){图书信息,每本图书的具体信息,组成:{图书编号,图书名,作者,出版社,图书类别,库存余量,图书价格} }(2){管理员,管理员的基本信息,组成:{管理员编号,管理员姓名} }(3){客户,客户的基本信息,组成:{客户编号,客户姓名,收货地址,账户余额,联系方式} }(4){收货地址,客户的收货地址,组成:{地址编号,地址} }(5){订单,订单的信息,组成:{订单号,订单日期,订单细则,收货人姓名,发货地址,管理员编号,收货人联系方式} }(6){订单细则,订单的细节内容,组成:{细则号,图书编号,订购数量,发货状况} }2 系统设计2.1 数据库设计2.1.1 概念结构设计1.系统涉及到的实体(1)管理员{管理员编号,管理员姓名}(2)客户{客户编号,客户姓名,收货地址,账户余额,联系方式}(3)图书{图书编号,图书名,作者,出版社,图书类别,库存余量,图书价格}(4)订单{订单号,订单日期,订单细则,收货人姓名,发货地址,管理员编号,收货人联系方式}(5)订单细则{细则号,图书编号,订购数量,发货状况} (6)收货地址{地址编号,地址}2. 系统E-R模型设计A. 分E-R 模型设计(1)每个客户可以拥有多个收货地址,这些地址只能被这个客户使用。
网上书店数据库课程设计

网上书店数据库课程设计一、课程目标知识目标:1. 让学生掌握数据库的基本概念,了解网上书店数据库的结构和设计原理;2. 使学生学会使用数据库管理系统(DBMS)进行网上书店数据的存储、查询和管理;3. 帮助学生掌握数据库设计的基本方法,能够根据实际需求设计合理的网上书店数据库。
技能目标:1. 培养学生运用数据库技术解决实际问题的能力,能够独立完成网上书店数据库的设计与搭建;2. 提高学生运用数据库管理系统进行数据处理和分析的能力,为网上书店的运营提供数据支持;3. 培养学生团队协作能力,能够在小组合作中共同完成数据库设计与优化任务。
情感态度价值观目标:1. 激发学生对数据库技术的兴趣,培养其探索精神和创新意识;2. 引导学生关注数据库在电子商务领域的应用,提高其对互联网行业发展趋势的认识;3. 培养学生尊重知识产权,树立正确的网络道德观念。
分析课程性质、学生特点和教学要求,本课程目标旨在使学生在掌握数据库基础知识的基础上,学会运用数据库技术解决实际问题。
课程将结合网上书店的实际案例,引导学生从需求分析、概念结构设计、逻辑结构设计等方面进行数据库设计,培养学生实际操作能力。
通过小组合作与讨论,提高学生的团队协作能力,使其在课程学习过程中形成积极向上的情感态度和价值观。
最终实现将理论知识与实践相结合,为未来从事相关领域工作打下坚实基础。
二、教学内容1. 数据库基本概念:介绍数据库的定义、作用、分类及发展历程;讲解数据库管理系统(DBMS)的功能和原理。
2. 数据模型:阐述实体-关系模型、关系模型、层次模型和网状模型等常见数据模型,重点讲解关系模型及其应用。
3. 关系数据库设计:分析网上书店需求,引导学生学习实体、属性、关系的定义,掌握E-R图绘制方法;讲解关系数据库的设计原则和步骤。
4. SQL语言:讲解SQL语言的基本语法,包括数据定义、数据查询、数据更新和数据控制等功能;结合网上书店案例,让学生学会编写SQL语句进行数据库操作。
网上书店数据库设计说明书

网上书店数据库设计说明书正文:1.介绍本文档旨在提供网上书店数据库设计说明书,以便为网上书店搭建一个功能强大、高效可靠的数据库系统。
该系统将实现在线销售和管理图书的各项功能,包括图书的浏览、搜索、购买、订单管理、库存管理、用户管理等。
2.系统需求分析2.1 用户需求分析2.1.1 注册和登录功能2.1.2 图书浏览和搜索功能2.1.3 购物车和下单功能2.1.4 订单管理功能2.1.5 图书库存管理功能2.1.6 用户管理功能2.2 功能需求分析2.2.1 数据库架构设计2.2.3 用户信息表设计2.2.4 订单信息表设计2.2.5 系统运营数据分析表设计3.数据库设计3.1 数据库架构3.2 表设计3.2.1 图书信息表3.2.2 用户信息表3.2.3 订单信息表3.2.4 系统运营数据分析表4.系统功能设计4.1 用户注册和登录功能设计4.1.1 注册功能设计4.1.2 登录功能设计4.2 图书浏览和搜索功能设计4.2.1 图书分类浏览功能设计4.3 购物车和下单功能设计4.3.1 购物车功能设计4.3.2 下单功能设计4.4 订单管理功能设计4.4.1 订单查询功能设计4.4.2 订单状态管理功能设计4.5 图书库存管理功能设计4.5.1 图书库存查询功能设计4.5.2 图书库存修改功能设计4.6 用户管理功能设计4.6.1 用户信息查询功能设计4.6.2 用户信息修改功能设计5.数据库安全设计5.1 权限管理设计5.2 数据备份与恢复设计5.3 安全性考虑6.数据库性能设计6.1 索引设计6.2 缓存设计6.3 集群设计7.数据库部署与维护7.1 硬件选型7.2 软件环境配置7.3 数据库部署7.4 数据库维护附件:1.数据库架构图2.表结构设计图3.系统功能流程图法律名词及注释:1.数据保护法 —— 一项保护个人隐私和数据安全的法律,规定了公司在处理用户个人数据时应遵守的规定。
2.实名制 —— 要求用户在注册和购买商品时必须提供真实姓名身份信息的制度。
#数据库课程设计-网上书店数据库管理系统

网上书店数据库管理系统1.需求分析1.1 网上书店的工作过程:首先,用户进入网上书店的URL ,可以浏览书店里所有的书籍,但是不能购买,如果想购买必须先在该网站注册。
注册信息包括用户的注册网名,真实姓名,电话号码,家庭地址,以及卡号(为了简单起见,假设注册该网站的用户首先要去该书店的办公地址办理一张购书卡),邮箱地址(以便网站第一时间向用户提供新书通报,打折优惠等信息)。
用户注册了该网站后,可以在网站购买书籍,购买时用户向网站的管理员提交订单,等管理员审核通过后向用户反馈书籍的具体信息以及发货信息。
等顾客收货后确定收货完成该份订单。
1.2 数据流图:1.3 数据字典: 1.3.1 书籍信息表 含义说明:书店关系体统的核心信息,提供了书籍的具体信息。
数据项 含义说明数据类型数据长度 取值范围 ISBN 号区别每本书的唯一标识, 字符型 80任意合法字符且在长度范围内 书籍名称 书籍的名称 字符型 80 合法的字符 书籍作者 书籍的作者 字符型 10合法字符 书籍出版年份书籍的出版日期日期型日期型的长度符合日期的规则1.3.2 库存信息表 含义说明:书店关系系统的核心信息,提供了库存的信息。
顾客 书籍库存订单 处理订单管理员数据项含义说明数据类型数据长度取值范围ISBN号区别每本书的唯一标识字符型80 合法字符库存量书籍的存货量整型10 1-9999999999 价格书籍的单价浮点型10 0.1-999999999 折扣书籍的折扣率浮点型 4 0.001-0.099库存下限书籍在仓库中的最少数量整形10 1-9999999999 含义说明:书店关系系统的核心信息,提供了订单的具体信息。
数据项含义说明数据类型数据长度取值范围订单号区别每个不同订单的唯一标识字符型20 合法的字符订购人订购人的注册网名字符型10 合法的字符订购日期用户生成订单的时间日期型日期型的长度满足特定的日期格式订单书籍订单书籍的ISBN号字符型80 合法的字符书籍数量每份订单书籍的数量整型10 1-9999999999发货日期管理员确定发货的时间日期型日期型的长度满足特定的日期格式1.3.4 顾客信息表含义说明:书店关系系统的核心信息,提供了顾客的具体信息。
数据库设计--《网上书店系统》

数据库设计--《⽹上书店系统》1系统需求分析1.1 系统基本功能描述⽹上书店系统是依据⽹上书店能够在线出售图书和管理需求⽽进⾏设计的,⽬的是实现在线接受客户订单、书店信息管理的功能。
需要在线购买图书的客户能够通过⽹上书店系统查询所需要的图书是否有售并能够查询有售图书的基本信息(⽐如图书名称、作者、出版社等)。
如果客户查询到所需并且有售的图书,能够在线下达订单,然后提交给数据库,并且客户能够查询⾃⼰的订单的处理情况。
同时,客户应该能够维护⾃⼰的信息(⽐如修改⾃⼰的收货地址、联系⽅式等)。
⽹上书店系统应该⾄少拥有⼀个管理员。
管理员能够维护在售图书的基本信息(⽐如图书信息的增加、删除、修改等),并且能够对图书进⾏分类管理。
同时,管理员能够维护客户的信息,能够审核客户提交的订单以确认或删除订单。
1.2系统数据流图通过对系统需求进⾏分析,我们尅有确定系统中有两类⽤户:管理员和客户。
各类⽤户的具体描述如下:(1)管理员描述:管理员负责后台管理。
包括维护(增加、删除、修改)图书信息,对图书进⾏分类管理;维护客户信息(增加和删除客户账号);审核订单并确认合法订单或删除⾮法订单。
(2)客户描述:客户可以查询有售图书的基本信息;可以维护⾃⼰的信息;可以进⾏⽹上订书;可以查询订单的处理情况。
1.2.1数据流分析根据分析,我们可以得到系统的数据流图。
(1)⽹上书店系统顶层数据流图如图1-1所⽰。
1.2.2 数据字典根据数据流程分析,对系统数据进⾏分析和汇总,建⽴系统数据字典。
下⾯列出部分数据字典内容。
1.2.2.1 数据项(1)管理员①{管理员编号,每位管理员在系统中的唯⼀编号也是管理员登陆的账号名,char(7)}②{管理员姓名,char(10)}③{管理员登陆密码,char(10)}(2)客户①{客户编号,每位客户在系统中的唯⼀编号,char(7)}②{客户姓名,char(10)}③{地址编号,客户有多个地址时每个地址的编号,char(7)}④{地址,客户收货地址中某个具体地址,varchar(20)}⑤{联系⽅式,客户的电话号码,char(15)}⑥{账户余额,客户购书账户的余额,float(7)}⑦{登陆密码,char(10)}(3)订单①{订单号,唯⼀标识⼀张订单的编号,char(7)}②{订单⽇期,⽣成订单的时间,datetime,取值为提交订单的时间}③{收货⼈姓名,查收图书的⼈的姓名,char(10),同客户姓名}④{收货⼈联系⽅式,收货⼈的电话号码,char(15),同联系⽅式}⑤{发货地址,图书送达的⽬的地,varchar(100),是客户收货地址中的⼀个}⑥{管理员编号,审核该订单的管理员的编号,char(7),同管理员编号}(4)订单细则①{细则号,唯⼀标识⼀个订单细则,char(7)}②{图书编号,订单所包含的图书的编号,char(7),同图书信息中的图书编号}③{订购数量,购买同本图书的数量,smallint,取值不⼤于此本图书的库存余量}④{发货状况,已订购图书的发货情况,varchar(100)}(5)图书信息①{图书编号,唯⼀标识⼀款图书的编号,char(7)}②{图书名,图书的题名,varchar(20)}③{作者,图书的作者,char(10)}④{出版社,图书的出版⽅,varchar(20)}⑤{图书类别,图书的分类,varchar(20)}⑥{库存余量,当前书店此款图书的剩余量,smallint,当前库存量=上次库存量-售出数量}⑦{图书价格,图书的售价,float(5),图书价格⼤于零}1.2.2.2 数据结构(1){图书信息,每本图书的具体信息,组成:{图书编号,图书名,作者,出版社,图书类别,库存余量,图书价格} }(2){管理员,管理员的基本信息,组成:{管理员编号,管理员姓名} }(3){客户,客户的基本信息,组成:{客户编号,客户姓名,收货地址,账户余额,联系⽅式} }(4){收货地址,客户的收货地址,组成:{地址编号,地址} }(5){订单,订单的信息,组成:{订单号,订单⽇期,订单细则,收货⼈姓名,发货地址,管理员编号,收货⼈联系⽅式} }(6){定单细则,订单的细节内容,组成:{细则号,图书编号,订购数量,发货状况} }2 系统设计2.1 数据库设计2.1.1 概念结构设计1.系统涉及到的实体(1)管理员{管理员编号,管理员姓名}(2)客户{客户编号,客户姓名,收货地址,账户余额,联系⽅式}(3)图书{图书编号,图书名,作者,出版社,图书类别,库存余量,图书价格}(4)订单{订单号,订单⽇期,订单细则,收货⼈姓名,发货地址,管理员编号,收货⼈联系⽅式}(5)订单细则{细则号,图书编号,订购数量,发货状况}(6)收货地址{地址编号,地址}2. 系统E-R模型设计A. 分E-R 模型设计(1)每个客户可以拥有多个收货地址,这些地址只能被这个客户使⽤。
网上书城数据库设计

1.用户表(users):2.3./**创建表——评论*/CREATE TABLE comments(cid INT(11) AUTO_INCREMENT PRIMARY KEY, ccontents V ARCHAR(400) NOT NULL,ctime VARCHAR(100) NOT NULL,cstar VARCHAR(100),cbid INT(11) NOT NULL,cuid INT(11) NOT NULL,other1 V ARCHAR(200),other2 INT(11))/**创建表-订单详情*/CREATE TABLE orderbooks(obid V ARCHAR(100) PRIMARY KEY,bid INT(11) NOT NULL,onum INT(11) DEFAULT '1',oid V ARCHAR(100) NOT NULL,obstate INT(11) DEFAULT '0',obpay INT(11) DEFAULT '0')Sql语句:CREATE DATABASE bookShop;/**创建表——用户*/CREATE TABLE users(uid INT(11) AUTO_INCREMENT PRIMARY KEY, uloginid V ARCHAR(20) NOT NULL,upwd V ARCHAR(40) NOT NULL,uname VARCHAR(100) NOT NULL,uphone V ARCHAR(100) NOT NULL,uaddress VARCHAR(100) NOT NULL,umail VARCHAR(100),uregistertime V ARCHAR(100),ulastlogintime V ARCHAR(100),upicture V ARCHAR(200),other1 V ARCHAR(100),other2 INT(11),other3 INT(11))/**创建表—订单*/CREATE TABLE orders(oid V ARCHAR(100) PRIMARY KEY,otime VARCHAR(100) NOT NULL,ouid INT(11) NOT NULL,oreceive VARCHAR(200),oaddress VARCHAR(1000) NOT NULL,ophone V ARCHAR(100) NOT NULL,oprice V ARCHAR(100) NOT NULL,opaymethod V ARCHAR(20) NOT NULL,opaybank VARCHAR(20) NOT NULL,ostate INT(11) DEFAULT '0')/**创建表——书店*/CREATE TABLE bookshop(bsid INT(11) AUTO_INCREMENT PRIMARY KEY, bloginid V ARCHAR(20) NOT NULL,bpwd V ARCHAR(20) NOT NULL,bname VARCHAR(100) NOT NULL,baddress VARCHAR(100) NOT NULL,bphone V ARCHAR(100) NOT NULL,bmail VARCHAR(100),bbusinesstime V ARCHAR(100),blawman VARCHAR(100),other1 INT(11),other2 V ARCHAR(100),other3 V ARCHAR(100))/**创建书信息表*/CREATE TABLE books(bid INT(11) AUTO_INCREMENT PRIMARY KEY,bname VARCHAR(100) NOT NULL,bprice V ARCHAR(50) NOT NULL,bauthor V ARCHAR(50) NOT NULL,bdiscount FLOAT DEFAULT '1',bdiscription V ARCHAR(400) DEFAULT '',bimg VARCHAR(200) NOT NULL,bcategory INT(11),bbsid INT(11) NOT NULL,other1 INT(11),other2 V ARCHAR(20))/**创建表-书籍类别*/CREATE TABLE category(cid INT(11) AUTO_INCREMENT PRIMARY KEY, category INT(11),other1 INT(11),other2 V ARCHAR(30))。
数据库课程设计-网上书店

数据库课程设计报告网上书店学生姓名:***学号: **********专业年级:计算机科学与技术10级指导教师:***一、系统概述 (4)1.1课题描述 (4)1.2系统目标 (4)二、系统需求分析 (5)2.1系统总体的功能需求 (5)2.2系统结构设计 (5)2.3系统总体流程图 (7)2.4 系统功能分析 (7)2.5系统功能模块设计 (7)三、UML逻辑设计 (8)3.1用例: (8)3.1.1 登录: (8)3.1.2订单管理: (8)3.1.3. 图书管理: (9)3.1.4. 用户管理: (9)3.1.5 客户用例图 (10)3..1.6订单管理: (11)3.1.7图书选购: (11)3.1.8注册: (12)3.1.9顾客订单用例图 (12)3.2类图 (13)3.2.1 控制层 (13)3.2.2 业务逻辑层: (14)3.2.3持久层: (15)3.3 类图之间的关系 (16)3.4 顺序图 (17)3.4.1管理者进行登录: (17)3.4.2 管理者对图书管理: (18)3.4.3 用户订单处理: (19)四、系统详细设计与实现 (21)4.1 系统核心功能实现 (21)4.2购物车和订单管理 (21)4.2.1将书籍添加到购物车 (21)4.2.2下单和订单管理模块 (21)4.3用户模块 (22)4.3.1用户浏览书籍模块 (22)4.3.2用户搜索书籍模块 (23)4.3.3用户查看书籍详细信息 (23)4.4 书籍管理模块 (24)4.4.1 查看书籍信息 (24)4.4.2 添加书籍 (25)4.5 用户管理模块 (25)4.5.1查看用户信息: (26)4.6订单管理模块 (26)显示订单界面: (26)五、心得体会 (26)六、参考文献 (27)一、系统概述1.1课题描述随着网络信息的发展,网络在人们生活中的应用越来越广泛。
人们越来越想在最短的时间内购买到自己所需的图书。
网上书店项目数据库设计文档

类别编号,外键,类别表id为主键
author
Varchar
书籍的作者,可选可以为空
price
Float
书的单价,
picture
Varchar
书籍的图片的路径
bookconcern
vrchar
出版社
page
Varchar
页码
intime
Date
录入时间默认当前时间
workmanid
int
操作人编号
管理员名称
password
varchar
管理员密码
sendtime
Date
发货时间,可以为空
consignment
Bit
是否发货?1标示发货,0标示没有发货,默认为0
4表名:bt_user (用户表)
字段名
类型
描叙
id
int
用户编号,自动增长,主键,
name
varchar
用户昵称,唯一
password
varchar
用户密码
varchar
电子邮件
1表名:tb_booktype(书籍类别表)
字段
值类型
描叙
id
Int
自动增长,标示列,主键,类别编号
typename
Varchar
类别名称,唯一
2表名:tb_bookinfo(书籍信息表)
字段
值类型
描叙
bId
Int
自动增长,标示列,主键,书籍编号
bookname
Varchar
书籍名称,唯一
typeid
truename
varchar
真实名称
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
网络书店系统数据库设计说明书
目录
1引言 (3)
1.1编写目的 (3)
1.2背景 (3)
1.3定义 (3)
1.4参考资料 (3)
2外部设计 (4)
2.1标识符 (4)
2.2使用它的程序 (4)
2.3约定 (4)
2.4支持软件 (5)
3结构设计 (6)
3.1系统数据分布 (6)
3.2概念结构设计 (6)
3.3逻辑结构设计 (8)
4数据库实现 (8)
4.1数据库建立 (8)
4.2数据库初始化 (9)
4.3参数设置 (9)
1引言
1.1编写目的
这份数据库说明书是为了说明本小组项目(网络书店系统)的数据库的相关信息,以供本小组其它成员在使用到数据库时更顺利,以及为了使更好的进行具体的数据库设计。
1.2背景
为了更好的为本小组的项目(网络书店系统)服务,使用了本小组成员都熟悉的数据库MYSQL,且免费,节省费用。
1.3定义
1.关系模型:用二维表格结构表示实体集,外键表示实体间联系的数据模型称为关系模型。
关系模型是由若干个关系模式组成的集合。
2.关系模式:关系模式实际上就是记录类型。
它包括:模式名,属性名,值域名以及模式的主键。
关系模式仅是对数据特性的描述。
3.关系实例:就是一个关系,即一张二维表格。
4.属性:在关系模型中,字段称为属性。
5.域:在关系中,每一个属性都有一个取值范围,称为属性的值域。
6.元组:在关系中,记录称为元组。
7.候选码:在关系中能唯一标识元组的属性集称为关系模式的候选码。
8.主码:用户选作元组标识的一个候选码为主码。
9.外码:某个关系的主码相应的属性在另一关系中出现,此时该主码在就是另一关系的外码,如有两个关系S和SC,其中S#是关系S的主码,相应的属性S#在关系SC中也出现,此时S#就是关系SC的外码。
10.实体完整性规则:这条规则要求关系中元组在组成主码的属性上不能有空值。
如果出现空值,那么主码值就起不了唯一标识元组的作用。
11.参照完整性规则:这条规则要求“不引用不存在的实体”。
其形式定义如下:如果属性集K是关系模式R1的主码,K也是关系模式R2的外码,那么R2的关系中,K的取值只允许有两种可能,或者为空值,或者等于R1关系中某个主码值。
这条规则在使用时有三点应注意:
1)外码和相应的主码可以不同名,只要定义在相同值域上即可。
2)R1和R2也可以是同一个关系模式,表示了属性之间的联系。
3)外码值是否允许空应视具体问题而定。
1.4参考资料
本设计说明书根据软件工程标准(GB8567-88)所写。
2外部设计
2.1标识符
该数据库的所有标识符都是以ID结尾的字段,自动增量都是1。
2.2使用它的程序
在本小组项目的网络书店系统中在用户注册、用户登陆验证、以及购书等都将用到该数据库。
2.3约定
在软件系统开发中,数据库设计应遵循必要的数据库范式理论,以减少冗余、保证数据的完整性与正确性。
数据库命名规范:
1、数据库涉及字符规则:采用26个英文字母(区分大小写)和0 -9这十个自然数,
加上下划线_组成,共63个字符。
不能出现其他字符(注释除外)。
2、据库对象命名规则:数据库对象包括表、视图(查询)、存储过程(参数查询)、函数、约束。
对象名字由前缀和实际名字组成,长度不超过30。
前缀:使用小写字母。
3、实际名字:实际名字尽量描述实体的内容,由单词或单词组合,每个单词的首字母大写,其他字母小写,不以数字和_开头。
4、数据库表命名规则:字段由前缀和实际名字组成。
实际名字中首单词一个系统尽量采取同一单词。
前缀:使用小写字母tb,表示表。
例如:tbMember
tbMember_Info
tbForum_Board
tbForum_Thread1
5、字段命名规则:数字、字符、日期/时间、lob(大对象)、杂项,字段由表的简称、下划线,实际名字加后缀组成。
后缀:使用小写字母,代表该字段的属性。
例如: User_Idint
User_Namestr
User_RegDatedtm
6、视图命名规则:字段由前缀和实际名字组成,中间用下划线连接。
前缀:使用小写字母vi,表示视图。
例如:vi_User
vi_UserInfo
7、存储过程命名规则:字段由前缀和实际名字组成,中间用下划线连接。
前缀:使用小写字母sp,表示存储过程。
例如:sp_User
8、数据库设计文档规则:所有数据库设计要写成文档,文档以模块化形式表达。
大致格式如下:
'-------------------------------------------
表名:tbUser_Info
建立人:UAM_Richard
日期:2004-12-17
版本: 1.0
描述:保存用户资料
具体内容:
UserId int,自动增量用户代码
UserName char(12)用户名字
......
--------------------------------------------
9、sql语句规则:所有sql关键词全部大写,比如SELECT,UPDATE,FROM,ORDER,BY 等。
2.4支持软件
该数据库支持的软件有如:数据加载工具(SQL*LOADER)。
3结构设计
3.1系统数据分布
由于该系统只是beta版,并不打算使用分布式数据库,采用的是集中式的数据库。
3.2概念结构设计
成员信息表tb_member
订单表tb_order
折扣表tb_rebate
子类类型表tb_subType
3.3逻辑结构设计
tb_UserInfo的UserID和tb_Book的BookID是后面几个表的外键。
4数据库实现
4.1数据库建立
数据库安装:
1、下载获得Mysql的for win32安装包后,用winzip解压缩,直接运行setup.exe,需要注
意的是选择一个安装路径,当然,安装路径可以任意,建议选择C:\MySQL目录。
安装完成后MySQL也就完成了。
默认的用户名是root,密码为空。
2、Mysql安装完成后,请通过开始-程序-附件-命令提示符进入:
3、录入cd C:\mysql\bin 并按下回车键,将目录切换为cd C:\mysql\bin
4、在C:\mysql\bin> 命令提示符下录入mysqld-nt -install 命令,然后按下回车,如果出现
Service successfully installed 的提示, 这表示你已成功的将MySQL 安装成一项Windows 的服务。
5、点击开始-程序-管理工具-服务,你可以看到Mysql已经成为众多服务项目中的一
项,不过此时它还未被启动, 因此接下来我们就来启动它。
6、启动MySQL 服务的方法有以下三种,请自行选择其中一种来进行:
7、重启机器时自动启动它
8、在服务窗口中选取MySQL 服务名称,然后按下启动按钮来启动它
9、在“命令提示字符”窗口中输入NET START MySQL 指令来启动它
10、Mysql数据安装完成,系统会默认生成一个名为test的数据库。
一般情况下,由于该数
据需要用root用户进行访问,从安全性角度而言,我们建议你新建一个数据库,并给这个数据库分配一个新的用户来访问。
11、由于Mysql数据库默认的客户端功能比较少,不支持数据库的建立和用户的新增。
其他
比如Mysql-front等工具带了这些功能,您可以去下载这些工具来使用,当然,你也可以通过以下介绍的命令行方式来新增用户与数据库。
登录数据库
“命令提示字符”窗口录入,
录入cd C:\mysql\bin 并按下回车键,将目录切换为cd C:\mysql\bin
再键入命令mysql -uroot -p,回车后提示你输密码,如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中了,MYSQL的提示符是:mysql> 修改密码
C:\mysql\bin提示符下录入:
格式:mysqladmin –u用户名-p旧密码password 新密码
例如:给root加个密码ab12。
键入以下命令:
mysqladmin -uroot password ab12
建立数据库
格式:create database 库名;
例如:建立新数据库shopex
在MYSQL的提示符下:mysql> 录入create database shopex;
4.2数据库初始化
先删除非空表中现有所有记录,。
4.3参数设置
参数设置详见4.1的Mysql数据库安装。