数据库设计实例-网上书店.
数据库设计-《网上书店系统》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)每个客户可以拥有多个收货地址,这些地址只能被这个客户使用。
网上书店管理系统数据库MySQL样本
新建数据库Create database BookData;Use BookData;新建表B1create table Tbl_Customer(Customer decimal not null,Customer_Name varchar(10),Address varchar(20),City varchar(20),State varchar(20),Zip varchar(6),Referred decimal);插入数据insert into tbl_customer values(1001,'张三','白下区','南京','江苏','210000',null );insert into tbl_customer values(1002,'李四','徐汇区','上海','上海','110000',null);insert into tbl_customer values(1003,'王五','朝阳区','北京','北京','110000',null);insert into tbl_customer values(1004,'赵六','北大街','无锡','江苏','110000',null);insert into tbl_customer values(1005,'李三','平江路','苏州','江苏','110000',null);insert into tbl_customer values(1006,'陈三','升州路','南京','江苏','110000',null);insert into tbl_customer values(1007,'朱三','三牌楼','合肥','安徽','110000',1003);新建表B2create table Tbl_Books(Isbn varchar(10) not null,Title varchar(300),Pubdate Date,Pubid decimal(2),Costs decimal(5,2),Retail decimal(5,2),Categorys varchar(12));插入数据insert into tbl_books values('','一天中10分钟身体成分','-1-21',4,18.75,30.95,'健康');insert into tbl_books values('','米奇复仇','-12-12',1,14.2,22,'家庭生活');insert into tbl_books values('','用牙签造车','-08-18',2,37.8,59,'小朋友');insert into tbl_books values('','数据库实现','1999-06-04' ,3,31,55,'计算机');insert into tbl_books values('','用蘑菇烹饪','-02-28' ,4,12.5,19.95,'烹饪');insert into tbl_books values('','数据库法宝','-11-30' ,3,47,75,'计算机');新建表B3create table Tbl_Orders(Orders decimal(4)not null,Customer decimal(4),Orderdate Date,Shipdate Date ,Shipstreet varchar(18) ,Shipcity varchar(15),Shipstate varchar(2),Shipzip varchar(6));修改数据长度时用alter table 表名modify 字段名称字段类型插入数据insert into Tbl_Orders values(1000,1005,'-03-31' ,'-04-02' ,'奥体大街' ,'南京','江苏','210019'); insert into Tbl_Orders values(1001,1010,'-03-31' ,'-04-01' ,'和会街' ,'南京','江苏','210001'); insert into Tbl_Orders values(1002,1011,'-03-31' ,'-04-01' ,'南京路' ,'上海','上海','00'); insert into Tbl_Orders values(1003,1001,'-04-01' ,'-04-01' ,'南京路' ,'上海','上海','00'); insert into Tbl_Orders values(1004,1020,'-04-01' ,'-04-05' ,'欧风街' ,'无锡','江苏','204002'); 新建表B4create table Tbl_Oraderitems(orders decimal(4) not null,Item decimal(2) not null,Isbn varchar(10),quantity decimal(3));插入数据insert into Tbl_Oraderitems values(1000,1,'',1);insert into Tbl_Oraderitems values(1001,1,'',1);insert into Tbl_Oraderitems values(1001,2,'',1);insert into Tbl_Oraderitems values(1002,1,'',2);insert into Tbl_Oraderitems values(1003,1,'',1);MySQL语句可以放在同一行;但是DB2不可以新建表B5create table Tbl_Author(AuthorId varchar(4) not null,name varchar(20));插入数据insert into Tbl_Author values('s100','薛明');insert into Tbl_Author values('j100','陈洪');insert into Tbl_Author values('a100','张二');insert into Tbl_Author values('k100','陈康');新建表B6create table Tbl_BookAuthor(Isbn varchar(10) not null,AuthorId varchar(4) not null); drop table Tbl_BookAuthor插入数据insert into Tbl_BookAuthor values('','s100');insert into Tbl_BookAuthor values('','p100');insert into Tbl_BookAuthor values('','j100');insert into Tbl_BookAuthor values('','k100');insert into Tbl_BookAuthor values('','p105');insert into Tbl_BookAuthor values('','a100');insert into Tbl_BookAuthor values('','a105');insert into Tbl_BookAuthor values('','b100');insert into Tbl_BookAuthor values('','a100');insert into Tbl_BookAuthor values('','w100');insert into Tbl_BookAuthor values('','w105');insert into Tbl_BookAuthor values('','j100');insert into Tbl_BookAuthor values('','r100');insert into Tbl_BookAuthor values('','f100');insert into Tbl_BookAuthor values('','b100');insert into Tbl_BookAuthor values('','s100');insert into Tbl_BookAuthor values('','r100');insert into Tbl_BookAuthor values('','s100');insert into Tbl_BookAuthor values('','w100');新建表B7create table Tbl_Publisher(Pubid varchar(10) not null,Name varchar(23) ,Contact Varchar(15),Phone varchar(12));插入数据insert into Tbl_Publisher values('1','新华出版社','程明','000-714-8321');insert into Tbl_Publisher values('2','扬子出版社','张译','010-414-8321');insert into Tbl_Publisher values('3','人民教诲出版社','园艺','044-714-8321');insert into Tbl_Publisher values('4','北京大学出版社','郑爽','000-564-8321');insert into Tbl_Publisher values('5','机械工业出版社','陆华','000-714-8751');新建表B8create table Tbl_Promotion(geft varchar(100),minretail decimal(5,2),maxretail decimal(5,2));插入数据insert into Tbl_Promotion values('书签',0,12);insert into Tbl_Promotion values('书签题题',12.01,25);insert into Tbl_Promotion values('图书封面',25.01,56);insert into Tbl_Promotion values('免费购物券',56.01,999.99);select * from Tbl_Customer;select * from Tbl_Books; select * from Tbl_Orders; select * from Tbl_Oraderitems;select * from Tbl_Author; select * from Tbl_BookAuthor;select * from Tbl_Publisher; select * from Tbl_Promotion;。
#数据库课程设计-网上书店数据库管理系统
网上书店数据库管理系统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)每个客户可以拥有多个收货地址,这些地址只能被这个客户使⽤。
网上图书商城数据库设计
《在线图书商城》-- 数据库设计2016。
6.5数据库在在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率以及实现的效果产生影响。
数据库设计一般包括以下四个部分:数据库需求分析、数据库概念结构设计、数据库逻辑结构设计、数据库物理结构实现。
一、数据库需求分析系统主要分为两部分,一个为普通会员用户部分,亦即前台系统.另外一个是系统的管理员部分,即后台系统。
网上书店前台系统部分主要是实现网上选书、购书、产生订单等功能的系统。
后台实现书籍管理、用户管理、订单处理等功能。
开发工具:Microsoft SQLServer 2000开发语言:SQL二、数据库概念结构设计系统共有九个实体:客户、管理员、图书类型、图书、订单、详细订单、参数设置、图书评价、信息反馈。
(1)客户(会员)的属性:自动编号CustomerId、客户名、客户密码、真实姓名、性别、客户电话、E—mail、地址、注册时间、提示问题、问题答案、登陆次数、最近登陆时间、邮编(2)管理员的属性:自动编号AdminId、管理员名称、管理员邮箱、密码、权限标志(3)图书类型的属性:自动编号BookTypeId、类别名称(4)图书的属性:自动编号BookId、图书名称、图书类型、出版社、出版日期、开本、版次、图书作者、图书译者、图书ISBN、图书定价、图书页码、图书简介、图书目录、市场价、会员价、成交量、浏览次数、折扣、图书封面图、图书库存量、入库时间、封装方式2.图书信息3。
管理员信息4.客户信息5。
订单信息6.图书评论信三、据库逻辑结构设计 & 数据库物理结构实现1.客户(会员):问题,问题答案,登陆次数,最近登陆时间,邮编)表1:客户信息表tb_customerinfo代码实现:tb_customerinfocreate table tb_customerinfo (CustomerId int identity,CustomerName varchar(20) not null,CustomerPwd varchar(20) not null,Customertruename varchar(20) not null,CustomerSex varchar(2) not nullconstraint CKC_CUSTOMERSEX_TB_CUSTO check (CustomerSex in ('男’,'女')),CustomerTel varchar(20) not null,CustomerEmail varchar(20) not null,CustomerAddr varchar(20) not null,CustomerRegTime datetime not null,CustomerQues varchar(200) null,CustomerAnswer varchar(200) null,CustomerLogTime int not null,CustomerLastLogT datetime not null,constraint PK_TB_CUSTOMERINFO primary key(CustomerId, CustomerName)2.管理员:表2:管理员信息表tb_manager代码实现:tb_managercreate table tb_manager (AdminId int identity, AdminName varchar(10) not null, AdminPwd varchar(20) not null, AdminFlag int not null, constraint PK_TB_MANAGER primary key (AdminId))3.图书类型表3:图书类型信息表tb_booktypeinfo代码实现:tb_booktypeinfocreate table tb_booktypeinfo (BookTypeId int identity, BookTypeName varchar(50) not null,constraint PK_TB_BOOKTYPEINFO primary key (BookTypeId))4.图书ISBN,图书定价,图书页码,图书简介,图书目录,市场价,会员价,成交量,浏览次数,折扣,图书封面图,图书库存量,入库时间、封装方式)表4:图书信息表tb_bookinfo代码实现:tb_bookinfocreate table tb_bookinfo (BookId int identity, BookTypeId int not null,BookName varchar(20) not null, BookType varchar(10) not null, BookPress varchar(20) not null, BookPubDate datetime not null,BookSize varbinary(10) not null,BookVersion varchar(10) not null,BookAuthor varchar(10) not null, BookTanslor varchar(10) null,Bookisbn varchar(20) not null, BookPrice money not null,BookPages int not null, BookOutline varchar(200) not null, BookCatalog varchar(200) not null,BookMprice money not null, BookPrprice money not null,BookDealmount int not null,BookLookmount int null,BookDiscount varchar(10) not null, BookPic money not null, BookStoremount int not null,BookStoretime datetime not null, BookPackstyle varchar(20) not null, constraint PK_TB_BOOKINFO primary key (BookId))5.购物车临时订购信息表5:购物车临时订购信息tb_shopbook代码实现:tb_shopbookcreate table tb_shopbook (CustomerId int not null,BookId int not null,ordermount int not null,price money not null,ispay varchar(10) not null default ’未付款’constraint CKC_ISPAY_TB_SHOPB check (ispay in ('未付款',’已付款')), constraint PK_TB_SHOPBOOK primary key (CustomerId, BookId))6.订单收货地址,收货人联系方式,备注,总卖出价)表6:订单信息表tb_order代码实现:table tb_ordercreate table tb_order (Id int identity, OrderId varchar(20) not null, CustomerId int not null,Orderdate datetime not null, Ordermount int not null, message varchar(100) null,postmethod varchar(100) not null, paymethod varchar(100) not null, recevername varchar(10) not null, receveraddr varchar(20) not null, recevertel varchar(10) not null, memo varchar(100) null,totalprice money not null,constraint PK_TB_ORDER primary key (OrderId))7.详细订单表7:订单详细信息表tb_orderdetail代码实现:tb_orderdetailcreate table tb_orderdetail (id int identity,OrderDetailId varchar(20) not null,OrderId varchar(20) not null,BookId int not null,ordermount int not null,poststatus varchar(10) not null default ’未发货'constraint CKC_POSTSTATUS_TB_ORDER check (poststatus in (’未发货’,'已发货’)), Recevstatus varchar(10) not null default '未收货'constraint CKC_RECEVSTATUS_TB_ORDER check (Recevstatus in ('未收货’,’已收货’)),sigletotalprice money not null,constraint PK_TB_ORDERDETAIL primary key (OrderDetailId))8.图书评价表8:图书评价信息表tb_comment代码实现:tb_commentcreate table tb_comment (CommentId int not null,BookId int not null, CustomerId int not null, Customername varchar(20) not null, Commentdate datetime not null, Commentcontent varchar(100) not null, Commentflag varchar(10) not null, constraint PK_TB_COMMENT primary key (CommentId))9.信息反馈客户IP)表9:信息反馈信息表tb_reply代码实现:tb_replycreate table tb_reply (ReplyId int not null, CustomerId int not null, ReplyType varchar(20) not null, Replytitle varchar(20) not null, Replycontent varchar(100) not null, Customername varchar(20) not null, Commentdate datetime not null, CustomerIP varchar(10) not null, constraint PK_TB_REPLY primary key (ReplyId))10.参数设置信息代码实现:table tb_parametertb_ create table tb_parameter (webname varchar(20) not null,regtiaoyue varchar(100) not null, notice varchar(100) not null,address varchar(20) not null,postcode varchar(10) not null, tel varchar(10) not null, copyright varchar(20) not null, weblogo varchar(100) not null, website varchar(10) not null, affordmethod varchar(100) not null, shopstream varchar(100) not null, postmethod varchar(100) not null, postprice money not null, Postdescp varchar(100) not null, worktime varchar(20) not null,service varchar(100) not null, law varchar(100) not null, commques varchar(100) not null, dealrule varchar(100) not null, constraint PK_TB_PARAMETER primary key (webname))。
网上书店数据库系统原理设计
数据库系统原理课程设计报告题目:网上书店数据库系统原理设计目录网上书店系统数据库设计 (1)1.课程设计要求 (1)1.1 课程设计的目的 (1)1.2课程设计的内容和要求 (1)1.3课程设计进度安排 (1)2.课程设计报告正文 (2)2.1系统需求分析 (2)2.2系统逻辑模型 (3)2.3系统的物理模型 ............................................................. - 13 -22. 4数据库设计 ........................................ 错误!未定义书签。
33总结 (17)网上书店系统数据库设计1.课程设计要求1.1 课程设计的目的1) 培养学生运用所学课程《数据库系统原理》的理论知识和技能,分析解决计算机应用实际问题的能力。
2) 培养学生掌握用《数据库系统原理》的知识设计计算机课题的思想和方法。
3)培养学生调查研究、查阅技术文献、资料、手册以及编写技术文献的能力。
通过课程设计,要求学生在指导教师的指导下,独立完成设计课题的全部内容,包括:通过调查研究和上机实习,收集和调查有关技术资料。
掌握设计课题的基本步骤和方法。
根据课题的要求进行上机实验调试。
1.2课程设计的内容和要求通过课程设计要求学生掌握数据库设计、开发查询等基本方法,掌握Visual Foxpro的操作方法,熟练进行数据表操作、SQL查询和简单的程序设计能力。
初步掌握数据库设计工具ERWIN的操作,能够运用ERWIN设计ER图。
最后综合利用上述工具设计和开发一个小型数据库。
为今后学习信息系统设计开发建设打下良好基础。
1.3课程设计进度安排第1-4天:学习和掌握Visual Foxpro的基本操作,包括数据表操作、SQL 语言以及可视化的程序设计。
第5-10天:学习和掌握运用ERWIN设计ER图的基本方法和技巧。
第11-14天:针对某一特定应用项目进行需求分析,设计ER图。
数据库课程设计――网上书店.
三年级品德与社会下册教学计划《数据库原理与应用》2011 / 2012学年第1学期实验八数据库设计一、姓名: 学号:_ - 班级:_ _ 指导教师:学生知识能力习惯态度分析:计算机科学与工程学院一、系统需求分析1.1系统要求(1 )提供了全面,详细的图书购物入口,轻松实现快捷购买。
(2)可以通过不同分类进行导航,用最方便,最快捷的方式找到你需要的图书。
(3)提供了图书购物所需的各种工具与网站知识、能力、情感价值观形成的关键时期,他们对自我、他人、家庭、社会有了一些浅显的认识,养成了一定的好的行为习惯,随着他们社会生活范围的不断扩大,进一步认识了解社会和品德的形成成为迫切的需要。
因本课程的开放性、活动性、实践性较强,绝大部分学生乐于这一门课程的学习,能积极与到本课程的课内外的学习活动中去。
(4)公正性很强(大站•专站•小站)排列顺序分明.公平公正的图书网址TOP排行二、本册共包含三个单元:说说我们的社区生活、画画我们成长的地方、看看我们周围的商店。
1.2需求分析(主要完成功能分析,建立功能模块图)网上书店和现实书店区别比较:网上书店优势:涉及范围广,经营成本低。
劣势:信用度如果低,影响生意;三、教学目的任务:优势:直观,信用度高。
劣势:涉及范围有限,经营成本高;现在有部分现实书店已经开始从网上书店进货了。
本系统开发的目的是为了学习这样去做一个交互式的网页以及了解这种强大的网络编程工具,方便客户端和浏览器端之间的交流。
数据库采用实用,易学的SQL Sever 2000,以TomcatJSP的服务器,XP作为系统运行平台。
功能模块图::rr^wmutin 户n «用HASHwaeifiHi 户it if1热爱劳动、勤俭节约的态度。
2、在生活中养成文明礼貌、诚实守信、友爱宽容、公平公正、热爱集体、团结合作、有根据需求分析,作出概念结构设计的E-R图如下:管理员信息的E-R图:客户信息的E-R图厂—'■'X( E kail )(ft S \ \ / /J_/(ftH ) i ■** -图书信息的E-R图:实体之间关系的E-R图:(二)能力3.1 E-R图转换为关系模型Books (图书信息):该表记录了图书的相关信息,包括(bookid, book name. author, pubdate, pubhouse, type, cover, price, sale num1、能够初步认识自我,控制和调整自己的情绪和行为。
数据库技术及应用课程数据库设计实例--网上书店系统
1 关系数据库设计实例——网上书店1.1需求描述和系统边界随着Internet和Web技术的迅速发展,电子商务已经被广大互联网用户所接受。
作为图书销售与电子商务相结合的产物,网上书店以其具有可降低销售成本、交易活动不受时空限制、信息传递迅速灵活等优势,已受到广大读者的喜爱与青睐。
网上书店是以网站作为交易平台,将图书的基本信息通过网站发布到Web中。
然后,客户可通过Web查看图书信息并提交订单,实现图书的在线订购。
订单提交后,书店职员将对订单及时处理,以保证客户能在最快时间内收到图书。
一个基于B2C的网上书店系统需求描述如下:该网上系统支持4类用户:游客、会员、职员和系统管理员。
游客可以随意浏览图书及网站信息,但只有在注册为网站会员后才能在线购书。
游客注册成功后即为普通会员,当其购书金额达到一定数量时可升级为不同等级的VIP会员,以享受相应的优惠折扣。
会员登录系统后,可进行的主要操作有:通过不同方式(如书名、作者、出版社等)搜索图书信息,网上订书,在线支付,订单查询与修改,发布留言等。
书店工作人员以职员身份注册登录后,可进行的主要操作有:维护与发布图书信息,处理订单,安排图书配送和处理退货等。
系统管理员的主要职责是维护注册会员和职员的信息。
请为该网上书店设计数据库E-R图和关系模式。
要求保存所需全部信息,并高效地支持上述各种应用。
由于网上书店功能比较复杂,本设计不考虑网上支付和退货功能。
1.2需求分析需求分析就是分析用户需求,是设计数据库的第一步。
该步骤主要是通过详细调查现实世界要处理的对象,并在此基础上确定系统的功能。
下面主要分析网上书店的业务需求、功能需求和业务规则等。
1.2.1 业务需求及处理流程业务需求分析是根据现实世界对象需求,描述应用的具体业务处理流程,并分析哪些业务是计算机可以完成的,而哪些业务是不能由计算机完成的。
网上书店主要业务包括:图书信息发布与查询、订购图书、处理订单并通知配送公司送书等。
网上书店数据库设计
网上书店数据库设计说明书拟制人毕泽羽审核人____ 刘春___________批准人______________________[2012年7月10日]实用文档第一章:引言1.1编写目的计算机的发明是人类历史上的一大创举,随之衍生的互联网成为当今人类社会信息交流的主要通道。
电子商务作为互联网的一部分在近年来得到了长足的发展。
电子商务网站是以因特网开放的网络环境为基础,基于浏览器/服务器应用方式,买卖双方通过互联网进行各种商贸活动,实现消费者的网上购物、商户之间的网上交易和在线电子支付,以及各种商务活动、交易活动、金融活动和相关的综合服务活动的一种新型的商业运营模式。
1.2背景随着各种网络技术的发展,Internet对人类生活的影响越来越大。
随着信息化社会的发展,信息的交流越的越来越容易,但信息的爆炸式增长。
给人们从大量信息中挑选出所自己需要的信息带来了难度人们对计算机的智能化需求越来越高互联网的快速发展,电脑的普及,为适应人们快速的生活节奏,提供了条件。
电子商务的概念也随之产生。
相比传统的零售业务,电子商务不管是在地域上、时间上还是经济上都优于传统业务,但因其以开放的互联网为基础,存在一定的局限性。
随着互联网技术的进一步发展,电子商务正以一种惊人的速度发展着网上书店购物系统,是以网络为媒介,通过创建一个虚拟的书店,用户通过网络查实用文档询自己所需要的书籍信息,避免了顾客自己实地挑选商品的烦琐过程,使用户的购物过程变得轻松、快捷、方便,与高效。
非常适合现代人快节奏的生活习惯;同时又能有效地控制“商场”运营的成本,开辟了一个新的销售渠道。
通过建立网上书店购物系统,可以提高企业的生产效率,降低经营成本,优化资源配置,从而实现企业的利润最大化由。
于网上图书交易打破了图书经销的规则及图书经营模式,越来越的网上书店的出现,要想很好的发展下去,就需要开发一套行之有效的网上图书交易系统。
第二章:可行性分析2.1可行性目标网上书店购物系统是基于B/S模式,通过对一些典型电子商务网站的考察、分析,并结合企业要求开发的一套信息化管理系统。
Oracle9i数据库系统课程设计——网上书店系统
延安大学课程设计报告2012 ~2013 学年第二学期教学单位数学与计算机学院课程名称Oracle10g数据库系统课程设计课程设计题目网上书店系统指导教师许淳学生姓名许蕊李翔边旭东专业名称计算机科学与技术年级2010级目录需求分析----------------------------------------边旭东总体设计----------------------------------------小组共同完成详细设计----------------------------------------许蕊李翔编码----------------------------------------小组共同完成测试-----------------------------------------边旭东维护-----------------------------------------许蕊网上书店系统第1章需求分析需求分析是系统开发的第一步,也是最重要的一步。
需求分析就是描述系统的需求,通过定义系统中的关键域类建立一种理解和沟通的机制,因此,系统的需求分析应该是开发人员和用户或者客户一起完成的。
需求分析采用面向对象的方法来完成,即明确系统要服务于哪些用户,对这些用户提供哪些服务等.1.1 功能需求这是一个电子商务系统,从较高层次上讲,我们的目标是赋予站点基本的电子商务功能,以尽量吸引在线顾客,而且使用起来也很容易。
我们力图分析那些理论中对顾客有价值的功能,除了基本的店面功能以及网站系统的必备功能外,我们还提供了购物车,可以对购物车信息进行修改,以给用户提供最大余地的选择空间,并且提供快速查找以及组合查找功能,方便客房了解并能快速购买所需产品。
对于系统管理员,也力求尽最大可能方便其进行操作。
将电子商城管理系统作为课程设计,目的是在学习数据库理论基础上,将所学的应用到实践中,以提高学习的质量,和提高知识的运用能力。
网上书店数据库设计+详细具体
网络书店系统数据库设计说明书目录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关系中某个主码值。
数据库设计实例-网上书店.
订单号,书号,顾客号,数量,金额,订购日期 订单管理:创建、增加、修改、删除、确认、结算
一、需求分析
5. 根据订单和支付信息发出图书,形成发货信 息(“支付信息”暂不考虑)
“发货信息”应当包括哪些信息?
是否需要独立的“发货单”?
“发货信息”如何与“之后,对收货予以确认,形成 收货信息
对视图的数据进行修改时,基表的数据也会发生变化,反之 亦然。
六、提高数据库效率的设计
2. 使用视图的优点
(1) 简化查询语句
可以把经常使用的联接、投影和查询语句定义为视图,当查 询时,只需简单地查询视图而隐藏对基表的复杂查询操作。 视图可以定制数据内容、可以使用字段别名。 当数据表结构改变时,只需更改视图定义的查询语句,不需 更改应用程序代码,保证了数据的逻辑独立性。 针对不同用户可以创建不同视图,真正的数据表是不可见、 不可访问的。
说明:
除触发器、存储过程外,有些约束在定义字段时给出, 当某个字段具有多个约束,可紧跟其后,排列不分次序。 有些也可在表结构定义的末尾单独给出约束定义。
五、数据库物理结构设计(存储结构)
2. 常用约束的书写方法
(1) 主键约束
用法1:独立书写
constraint <约束名> primary key (字段)
说明:
六、提高数据库效率的设计
3. 使用索引的几条原则
(1) 可以创建索引的情形
该列用于频繁搜索 该列用于对数据进行排序
(2) 不要创建索引的情形
数据库课程设计网上书店数据库管理系统
数据库课程设计网上书店数据库管理系统网上书店数据库系统设计概念结构设计1.书籍信息表2.供货信息表3. 订单信息表订购日期用户生成订单的时间日期型日期型的长度满足特定的日期格式订单总数每份订单书籍的数量整型10 1-9999999999发货地址管理员确定发货的地址字符型80订单状态订单的发货状态字符804.顾客信息表数据项含义说明数据类型数据长度取值围用户id唯一区分用户的表示字符型20 合法的字符用户姓名顾客的真实姓名字符型20 合法的字符用户密码用户的登录密码字符型10家庭住址顾客收货地址字符型100 合法的字符账户余额用户可用的金额整型10信用等级整型102.根据对网上书店的需求分析,画出如下实体的ER图和实体之间的关系ER图。
图-1书籍信息ER图图-2 缺货信息ER图图-3 订单信息ER图图-4 用户信息ER图图-5 供货信息ER图图-6订单详情ER图图-7供应商信息ER图图-6 实体之间关系ER图3.逻辑结构设计3.1 把ER图转换成相应的关系模型(a) 书籍{ISBN号,书籍名称,书籍作者,书籍出版年份}(b) 订单{订购号,订购人,订购日期,订购书籍,书籍数量,发货日期}(c) 库存{ISBN号,库存量,价格,折扣,库存下限}(d) 顾客{注册名,真实姓名,家庭住址,联系式,购书卡号(e) 管理员{管理员编号,管理员真实姓名,密码,具体身份,}(f) 书-订单{订单号,ISBN号,书籍数量,发货日期}(g) 订单-顾客{订单号,注册名,订购日期}(h) 库存-订单{ISBN号,订单号}3.2 数据模型的优化将关系模式订单垂直分解为书-订单,和订单-顾客。
个人体会为期近一个星期的软件能力测试实习结束了,回首整个过程,当第一次拿到实习报告的时候,真的没有想到自己能够和我的同伴们顺利的完成任务,最终事实证明我们做到了,我们学到了更多的知识。
在这期间,我们开始接触了小型的系统。
这些小型的系统分析、设计与实现巩固了我们的基础知识,让我们学会了一些编程的技巧,以及一些验证的法。
数据库实例-网上书店
第一页,编辑于星期一:二十点 十二分。
数据库设计实例-网上书店
1)需求分析 2)概念结构设计
3)逻辑结构设计
4)数据库的物理设计 5)数据库实施 6)数据库运行与维护
第二页,编辑于星期一:二十点 十二分。
网上书店- 需求分析
? 用户提出以下要求:
?1)我希望我的用户可以浏览书目,并在因特
第十三页,编辑于星期一:二十点 十二分。
网上书店-逻辑结构设计
? 数据库设计人员对用户的需求进行了分析,得到 如下两个新的需求:
1)客户可以在一个订单中定购若干种不同的书; 2)一个客户可以区分其在一天中提交的若干笔订
单。
第十四页,编辑于星期一:二十点 十二分。
? 为了满足这些新需求,在 orders表中引入了一 个新的属性 ordernum (订单号 ),它唯一的标
? 思考:如何确定 orderlists 上包含哪些属性?
第二十四页,编辑于星期一:二十点 十二分。
修改后的 E-R图如下:
书名 ISBN
价格
作者 现存数量 ordernum
出版年份
cardnum
books
orders
姓名
Cid
地址
客户
Order_lists
qty Ship_date
Place_order
? orders关系模式中,定义 (ordernum, isbn )为 码。此外,因为某个订单由某个客户在某天用 某个信用卡号定下的,所以在 orders表中还有以
下函数依赖:
ordernum→cid ordernum →order_data ordernum →cardnum
? 因此,orders不是2NF(存在非主属性对码
数据库课程设计-网上书店
数据库课程设计报告网上书店学生姓名:***学号: **********专业年级:计算机科学与技术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课题描述随着网络信息的发展,网络在人们生活中的应用越来越广泛。
人们越来越想在最短的时间内购买到自己所需的图书。
Oracle9i数据库系统课程设计——网上书店系统
课程设计报告(学生版)2010 ~ 2011 学年第二学期教学单位 * 课程名称 Oracle9i数据库系统课程设计课程设计题目网上书店系统指导教师 * 学生姓名 * 专业名称计算机科学与技术(数据库)年级 2008级网上书店系统1、课程设计背景与目的1.1 背景随着Internet国际互联网的发展,越来越多的企业开始建造自己的网站。
基于Internet的信息服务,商务服务已经成为现代企业一项不可缺少的内容。
很多企业都已不满足于建立一个简单的仅仅能够发布信息的静态网站。
现代企业需要的是一个功能强大的,能提供完善的电子商务服务的动态商务网站。
同时人们的生活方式也在随着发生改变,传统的购物方式已不能满足人们的需求。
JSP是Sun公司推出的一种网站开发技术。
JSP即Java Server Page,它可以在Servlet和JavaBean的支持下,完成功能强大的Web应用程序。
所以,在我们这次课程设计中,我们采用了JSP作为开发工具,构建了一个能实现基本的电子商务的小型动态商务网站——网上图书销售系统。
该系统能实现用户的注册、登录功能;能够实现商品的查询,订购等功能。
该系统基本上具备一个网上商品销售系统应该具备的常用功能,该设计项目基本上体现了构建一个动态商务网站所需要的技术,可以说,目前的大型商务网站也就是我们这个小型网站在内容上的扩充和完善。
1.2 目的本系统的目的是实现一个完整的电子商务网站,用于书籍商品的展示和销售。
采用JSP和oracle数据库作为开发工具,构建了一个能实现基本的电子商务的小型动态商务网站——网上图书销售系统。
该系统要能实现用户的注册、登录功能;能够实现商品的查询,订购等功能。
2、课程设计题目描述和要求本系统主要实现以下两方面的功能:一是客户在网上查书、选书、购书和产生订单等功能。
二是后台的图书管理功能,包括图书种类的管理和图书的管理。
具体划分的模块有:图书查询、购物车管理、订单管理、会员管理、图书管理等。
数据库设计-网上书店50页PPT
谢谢!
数据库设计-网上书店
1、纪律是管理关系的形式。——阿法 纳西耶 夫 2、改革如果不讲纪律,就难以成功。
3、道德行为训练,不是通过语言影响 ,而是 让儿童 练习良 好道德 行为, 克服懒 惰、轻 率、不 守纪律 、颓废 等不良 行为。 4、学校没有纪律便如磨房里没有水。 ——夸 美纽斯
5、教导儿童服从真理、服从集体,养 成儿童 自觉的 纪律性 ,这是 儿童道 德教育 最重要舒适的,否则就不是奢侈 。——CocoCha nel 62、少而好学,如日出之阳;壮而好学 ,如日 中之光 ;志而 好学, 如炳烛 之光。 ——刘 向 63、三军可夺帅也,匹夫不可夺志也。 ——孔 丘 64、人生就是学校。在那里,与其说好 的教师 是幸福 ,不如 说好的 教师是 不幸。 ——海 贝尔 65、接受挑战,就可以享受胜利的喜悦 。——杰纳勒 尔·乔治·S·巴顿
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
类别
四、数据库逻辑结构设计(关系)
E-R图转化为关系模式的方法
注:“关系模式”是指一个未确定各个属性的数据类型、 长度等参数的二维表,称为一个“关系”。 例:管理员( 账号,姓名,密码)
(1) 每一个实体对应一个关系 (2) 一对多的联系
当“联系”并无独有的“属性”时,通常不单独转换为 一个关系模式,而是将“一方”的主码增加到“多方” 关系模式中,构成其外码。 例如:客户(账号,密码,姓名,管理员ID)
“发货信息”应当包括哪些信息?
是否需要独立的“发货单”?
“发货信息”如何与“订单信息”联动?
一、需求分析
6. 顾客收到图书之后,对收货予以确认,形成 收货信息
“收货信息”应当包括哪些信息?
是否需要独立的“收货单”?
“收货信息”如何与“发货信息”联动?
一、需求分析
7. 顾客必须注册后才能订购图书
四、数据库逻辑结构设计(关系)
(3) 多对多的联系:转换为一个关系模式
关系的属性:n方的主键、m方的主键、“联系”的属 性 关系的主键:组合(n方的主键、m方的主键) 例如:
订单(客户号,书号,订购数量,订购日期)
n m
供应
(4) 三个以上的多元联系:转换为一个关系模式
类似于多对多联系的转换方法 例如: 供应商
(二)表的约束
1. SQL Server约束的分类
(1) 实体完整性约束
主要通过“主键约束”来实现,以确保表内任意行记录数据 是可区分的,是不相同的。 主键约束(Primary Key): 不重复、不为空 主要是通过“外键约束”来实现,即将一个表的主键添加到 另一个表中,称为外键(Foreign Key),使两个表联合操作时 能准确识别表内各条记录。 外键(Foreign Key):
1. 系统功能
前台 浏览 模块 网上 书店
匿名 用户
浏览/查找图书 用户注册 浏览/查找图书
注册 用户
订购图书/维护订单 用户资料维护
支付货款
后台 管理 模块 (管理员)
图书管理 订单管理 用户管理 思考:初步设计网 站首页布局?
二、系统功能与流程设计
2. 操作流程—总体流程
网上书店概况 浏览/搜索图书 网上 书店 首页 导航 订购图书 用户登录 用户注册
五、数据库物理结构设计(存储结构)
(一)表结构定义
1. 管理员表(admins) 2. 顾客表(customers) 3. 图书表(books) 4. 图书分类表(booktypes) 5. 订单表(orders)
写出各个关系表 的结构定义
五、数据库物理结构设计(存储结构)
(1) 顾客登录用的信息
注册账号,密码 姓名,性别,年龄,地址,邮编,电话,邮箱
(2) 顾客自身的基本信息
8. 应当提供管理员对图书、顾客、订单、发货、 收货等信息进行定期维护。
“管理员”信息:管理员ID、姓名、类型 “管理员”分类:
系统预设的管理员、自定义的管理员
二、系统功能与流程设计
数据库设计—网上书店
一、需求分析 二、系统功能与流程设计 三、数据库概念结构设计 四、数据库逻辑结构设计 五、数据库物理结构设计 六、提高数据库效率的设计 七、数据库的实施
一、需求分析
1. 能通过互联网(Internet)访问网上书店
B/S结构 选择合适的开发工具
2. 能在网页中浏览图书目录,可按图书类别分 类浏览。
项目
供应 (供应商号,项目号,零件号,数量) p 数量 零件
五、数据库物理结构设计(存储结构)
包括:
(一) 物理结构
是指含有字段类型、字段长度等参数的二维表结构(包 括主键、外键)
(二) 字段约束
主键(primary key)、外键(foreign key)约束 空/非空约束(null, not null) 默认值(default)约束 唯一(unique)约束 自动增长(identify)约束 检查(CHECK)约束
(1) 图书应当分类,按何种标准分类? 分为几类? 是否还有其他分类标准? 又如何分类? (2) 哪些信息构成图书目录? (3) 是否需要图书搜索功能? 能按哪些关键词搜索?
图书名称、图书号、出版社、单价
一、需求分析
3. 可浏览所选图书的详细信息。
具有包括哪些信息?
ISBN,书名,作者,出版社,出版日期,简介,封面, 库存数量,单价
4. 浏览图书时可订购图书,生成并提交订单
(1) 在浏览的哪些环节可以订购?
浏览图书目录、详细信息时
(2) 一个“订单”应包含哪些信息?
订单号,书号,顾客号,数量,金额,订购日期 订单管理:创建、增加、修改、删除、确认、结算
一、需求分析
5. 根据订单和支付信息发出图书,形成发货信 息(“支付信息”暂不考虑)
(2) 引用完整性约束
五、数据库物理结构设计(存储结构)
(2) 域完整性约束: 给定列的输入正确性和有效性。
A. 唯一性约束(UNIQUE): 要求某列任意两行的值不能相同 B. 标识约束(IDENTIFY): 能自动产生唯一的标识值,一般用 于主键。 C. 非空约束:Not Null D. 默认值约束: Default,为字段规定默认值 E. 检查约束:CHECK,为字段的值规定检查机制,如范围 F. 触发器、存储过程中定义的约束机制
返回 首页
二、系统功能与流程设计
3. 操作流程—购书流程
浏览图书 网上 书店 首页 登录 订购图书 用户管理 支付 发货 收货 确认
三、数据库概念结构设计(E-R图)
主要E-R图
书号 书名 作者 n 图书
管理
账号
姓名
密码
1
管理员
1
管理
账号 密码 姓名
n n
订购
m
单价
数量
客户
数量
日期
地址 电话
说明:
除触发器、存储过程外,有些约束在定义字段时给出, 当某个字段具有多个约束,可紧跟其后,排列不分次序。 有些也可在表结构定义的末尾单独给出约束定义。
五、数据库物理结构设计(存储结构)
2. 常用约束的书写方法
(1) 主键约束
用法1:独立书写
constraint <约束名> primary key (字段)
用法2:紧跟字段定义语句