系列文章
《数据库应用系统实践》------ 外卖配送系统
一、需求分析
1、系统背景
为了方便外卖的配送,我设计了外卖配送系统来满足需求。
2、 系统功能结构(需包含功能结构框图和模块说明)
(1)功能结构图
(2)模块说明
系统分为用户、外卖、管理员三个大的模块
每个模块包含相应信息。
3.系统功能简介
管理员可以对用户信息以及外卖信息进行管理,用户可以查询相关信息。
二、概念模型设计
1.基本要素(符号介绍说明)
.基本要素(符号介绍说明)
① 矩形:表示实体。
② 椭圆形:表示属性,即实体的属性。
③ 菱形:表示联系。
④ 连线:该连线为没有方向的线段,分为连接实体与属性(矩形与椭圆形之间的连线)和连接实体与联系名(矩形与菱形之间的连线);实体与联系名的连线旁需标注联系的类型,如1:1、1:n、m:n。
注意:在联系类型标注时请按照约定俗成的方式标注,一对多使用1:n,多对多使用m:n,如果超过两个实体请采用m:n:p:q:
2.ER图
三、逻辑模型设计
1.ER模型向关系模型转换规则
① 实体转换为单独的关系模式。
② 一对一联系转换为关系模式有两种方法。一、将联系转换为单独的关系模式;二、将其中一个实体的之间加入到另外一个实体的关系模式中,作为外键。
③ 一对多联系转换为关系模式有两种方法。一、将联系转换为单独的关系模式;二、将n实体的主键合并到1实体的关系模式中,作为1实体关系模式的外键。
2.转换后的关系模型
用户(用户账号,密码,手机号,管理员账号)
外卖(外卖号,外卖名,单价,管理员账号)
管理员(管理员账号,密码)
购买(用户账号,外卖号)
3.关系模型优化(达到3NF)
以上要素都属于第三范式
四、物理设计
1.创建数据库的SQL语句或截图
CREATE DATABASE takeaway
ON PRIMARY
(NAME=YAN,
FILENAME='E:\test\takeaway.mdf',
SIZE=5MB,
MAXSIZE=UNLIMITED)
LOG ON
(NAME=YAN_log,
FILENAME='E:\test\takeaway_log.ldf',
SIZE=5MB,
MAXSIZE=UNLIMITED)
2.创建所有表的SQL语句或截图(包含完整性约束)
CREATE TABLE 管理员(
管理员账号 CHAR(20) PRIMARY KEY,
密码 CHAR(20) NOT NULL
)
CREATE TABLE 用户(
用户账号 CHAR(20) PRIMARY KEY,
密码 CHAR(20) NOT NULL,
手机号 CHAR(20) NOT NULL,
管理员账号 CHAR(20) NOT NULL
FOREIGN KEY (管理员账号) REFERENCES 管理员(管理员账号)
)
CREATE TABLE 外卖(
外卖号 CHAR(20) PRIMARY KEY,
外卖名 CHAR(20) NOT NULL,
单价 CHAR(20) NOT NULL,
管理员账号