网上购物系统数据库er图实例(购物网站数据库设计)

本文目录
购物网站数据库设计
要这样,这样你会有无数多的表,而且以后新的一个产品时候非常麻烦,如果要属于新的类别,而且还会因为避免数据库太复杂而使得许多不同类的产品归在一个类。而且你的程序很麻烦,要为每个类编写不同程序,因为数据表名不同。
应该用下面的办法,主要使用四个表存储所有类别的商品:
第一、类别名称表,字段有
类别ID,类别名称
1 电脑
2 洗衣机
第二、类别属性表,字段有:
类别ID,属性ID,属性名称
1 1 CPU
1 2 内存
1 3 屏幕尺寸
2 1 容量
2 2 类型
第三、商品名称表,字段有:
商品ID,类别ID
1 1
2 1
3 2
4 2
第四、商品属性表,字段有:
商品ID,属性ID,属性值
1 1 P4
1 2 128M
1 3 CRT 14
2 1 P4
2 2 512M
2 3 LCD19
3 1 9公斤
3 2 滚筒
4 1 8公斤
4 2 波轮
上面定义了四个商品,商品ID为1~4,分别是128M、512M内存的电脑,和9公斤滚筒、8公斤的波轮洗衣机。
这样定义的数据库结构,可以包含任何商品,一般不会改变,那么程序也就无需改变,定义新的产品、或者修改现有商品只需要在程序界面有操作员点点鼠标。
自动售货机数据库设计实验 要求完整版的 配有全部需求分析,ER图和所有的东东,以及后来的源代码
概念结构设计
系统名称:自动售货机系统
系统设计成员:张亮,闻洪明
一:抽出实体
1, 顾客实体
2, 饮料管理系统实体
3, 记币管理器实体
4, 管理员实体
5,故障系统实体
(二)E-R图设计部分:
系统E-R图
(三)关系模式
1,顾客: {选择饮料,购买数量,零钱,投钱,取饮料}
2,饮料供应系统:{饮料名,饮料价格,数量,吐饮料 }
3,记币管理器: {顾客投钱数,饮料价格,投币金额不足,总金额}
4,管理员: {装饮料,取钱,维修}
5,故障系统: {故障显示,报警}
(四)数据模型
(1)顾客表
列名 数据类型 完整性约束
选择饮料 Varchar(30) Primary key
购买数量 integer Not Null
零钱 float Not Null
投钱 Float Not Null
取饮料 Varchar(30) Not Null
(2)饮料供应系统表:
列名 数据类型 完整性约束
饮料名 Varchar(256) Primary key
饮料价格 integer Not Null
数量 integer Not Null
吐饮料 Varchar(256) Null
(3)记币管理器表:
列名 数据类型 完整性约束
顾客投钱数 integer Primary key
价格不足 integer Primary key
饮料价格 integer Not Null
总金额 integer Null
(4)管理员表:
列名 数据类型 完整性约束
装饮料 Varchar(2) Primary key
取钱 Varchar(2) Not Null
维修 Varchar(2) Not Null
(5):故障维修系统表:
列名 数据类型 完整性约束
故障显示 Varchar(2) Primary key
报警 Varchar(2) Primary key
数据库画er图
方法/步骤
首先要了解ER图的核心要素:实体,属性,关系;实体就是一个个对象,比如猫;属性就是实体所有的某个属性,比如猫的性别;关系就是实体和实体之间或者实体内部之间的关系。
其次我们要了解ER图中怎么表示1中描述的三个核心要素:在ER图中,矩形代表实体,椭圆代表属性,菱形代表关系,各个形状之间用线段连接。
下面我们就以一个例子来一起画一个ER图,首先打开visio,我这里用的是2007,打开“新建”---》“常规”---》“基本框图”,新建一个空的界面,如下图所示:
我们在这张空的图里要表现如下的关系,对象1:学生(姓名,学号,系别);对象2:课程(课程名,课程编号,学分);关系:选课。我们先来画对象1,添加一个矩形框,三个椭圆框,如下图所示:
我用同样的方法,我们来建第二个对象课程,也是放一个矩形,三个椭圆形,然后用线把他们连接起来。
然后我们就来建这两个对象之间的关系,像图中加一个菱形,在菱形里写上选课两个字。如果没有菱形,可以加一个正方形然后旋转一下。
以上就将一个学生,选课的简单的ER图做好了,但是这只是简单的图。更专业的还可以这样做,打开“新建”---》“软件和数据库”---》“数据库模型图”,创建一个数据库模型图
然后拖进去一个实体,选中拖进去的实体,在下面的属性里定义好实体信息以及列,如下图所示:
以同样的方式定义课程实体,然后建关系表,拖进关系线段,连接两个实体,注意两头都是红色才是真正的连接起来了。会自动在关系属性里建立起连接,如下图所示:
到目前为止关系ER图就画完了,这种图ER图算是比较正规的一种了,比上面画的那一种要正规许多。当然,如果还想在专业化一些,可以用PowerDesign来绘制ER图。
如何画数据库ER图 详细�0�3
这是数据库设计的重点,也是数据库设计的难点。 那么,如何才能正确地反映客观现实,将ER 图画好呢? 答案是,必须进行正确的需求分析。那么如何进行需求分析呢?需求分析一般有两种方法,一种是结构化分析(SA),一种是面向对象分析(OOA).通过这两种方法的实施以后,都可以得到比较正确的ER 图。现在以下面的实际问题为例,通过结构化分析(SA)方法的应用,讲述如何得到比较正确的ER 图。 ( 一 ) 校务管理系统 在要建立的系统中,有以下功能: 1.管理老师的功能:录入老师情况(姓名.地址.所教课程), 老师缺课记录(名字.时间.原因. 课程) 2.管理学生的功能: 录入学生情况 ( 姓名 . 所选课程 . 成绩 ) 3.教务主任的功能 : 查询统计 1: 教师情况 2: 学生总成绩 3: 学生平均成绩 要求: 1)用结构化方法画出系统顶层图、 0 层图,数据字典。 2)画出该系统的数据模型ER 图。 一、结构化分析的需求分析 1) 分析实际情况 根据实际情况,我们得到一下情况: (一) 教师任课流程: 教务处根据各专业情况下达下学期教学任务 下学期 各专业 课程 教研室 协商安 排教学 任务 填写好 的课程 申请表 1 各系将课程表交给教师 2 安排好教室和时间。 教务处根据各专业情况交来的课程 数据,安排教 室和时间。 安排好 的课程 表 教师按照课程 表上课 课程表 (二)学生选择课程流程: 2)画数据流图 (一、)顶层数据流图 (二)0 层数据流图 查询情况 学生选课请求 教务 管理系统 教师学生情况 查询请求 F4 课程基本情况 F8 学生基本情况 F6 教师任课数据 F7 教师课程安排 F5 教师考勤情况 F9 学生成绩 F1 教室基本情况 F2 学生基本情况 基本 数据 学生选 课请求 和成绩 教师任 课信息 管理员和学生 1 基本数据 录入维护 2 任课数据录入、安排和考勤 3 学生选课和 成绩录入 4 查询 教务主任 F3 教师基本情况 学生报出自己的学号和名字进入系统 学号和 名字 系统进行学生的身份 检验 检验符 合要求 学生根据课程 表选课 系统显示安排好的各专业课程。。 课程 表 系统录入选课程并且进行验证 选择的 课程 3)画数据字典DD(略)和软件初始结构图 1 基本数据=学生基本信息|教师基本信息|课程基本信息|教室基本信息 2 教师任课信息=教师任课数据|教师考勤信息 3 学生选课请求和成绩=学生选课请求|学生成绩 学生基本信息=学号+姓名+性别+年龄+专业+班级 。。。。。。
如何画数据库ER图
构成E-R图的基本要素是实体型、属性和联系,其表示方法为:
实体型(Entity):用矩形表示,矩形框内写明实体名。
属性(Attribute):用椭圆形表示,并用无向边将其与相应的实体连接起来;比如学生的姓名、学号、性别、都是属性。
联系():用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1:1,1:n或m:n)。比如老师给学生授课存在授课关系,学生选课存在选课关系。

更多文章:
centos中文官网(centos的secureboot在哪设置)
2025年11月22日 21:30
卡盟系统二开源码(家有些网页打不开,为什么这样,猴子岛论坛,或者一些有病毒的网页,色的网页,重装系统不行)
2026年8月7日 19:45
wallpaper怎么设置鼠标特效(wallpaper控制鼠标灯光)
2026年5月6日 09:45
bootstrap平板设备(什么是bootstrap栅格系统)
2026年2月4日 10:15
inventor装配栏怎么出来(inventor左侧工具栏不见了)
2026年9月21日 16:30
web application什么意思(web site 和 web application的区别)
2026年1月18日 03:15
android计算器源码及分析(Android新手入门,求一个计算器的源代码,不要太复杂的就好)
2026年6月2日 11:30
数据库连接失败未指定的错误(ASP中的数据库连接,未指定的错误)
2026年1月22日 23:30
perfect中文谐音(赫海的触(Can You Feel It)中文音译歌词)
2026年4月11日 04:00












