数据库设计实例
1.概念
数据库设计就是根据业务系统的具体需求,结合我们所选用的DBMS(数据库管理系统),为这个业务系统构造出最优的数据存储模型。并建立数据库中的表结构以及表与表之间的关联关系的过程。使之能有效的对应用系统中的数据进行存储,并可以高效的对已存储的数据进行访问。
关系型数据库系统:mysql;oracle;SQLServer;PgSql
好的数据库:减少数据冗余;避免数据维护异常;节约存储结构;高效的访问
2.数据库设计的步骤:
- 需求分析(数据是什么;数据具有哪些属性;数据与属性的特点是什么)
- 逻辑分析(使用ER图对数据库进行逻辑建模,不需要考虑我们所选用的数据库管理系统)
- 物理设计(根据数据库自身的特点把逻辑设计转换为物理设计)
- 维护设计(1.对新的需求进行建表;2.索引优化;3.大表拆分)
了解系统中需要存储的数据;了解数据的存储特点;了解数据的生命周期
需要清楚的问题:
A.实体对实体之间的关系(1对1;1对多;多对多)
B.实体所包含的属性有什么
C.那些属性或属性的组合可以唯一标识一个实体
实例演示:
以一个小型的电子商务网站为例,在这个电子商务网站的系统中包括了几个核心模块:用户模块,商品模块,订单模块,购物车模块,供应商模块。
- 用户模块:用于记录注册用户信息
包括属性:用户名,密码,电话,邮箱,身份证号,地址,姓名,昵称.....
可唯一标识属性:用户名,身份证号,电话
存储特点:随系统上线时间的增长,需要永久存储
- 商品模块:用于记录网站中说销售的商品信息
包括属性:商品编码,商品名称,商品描述,商品品类,供货商名称,重量,有效期,价格......
可唯一标识属性:商品编码,(商品名称,供货商名称)
存储特点:对于下线商品可以归档存储(不能直接删除,可能跟订单有关)
- 订单模块:用于用户订购商品的信息
包括属性:订单号,用户姓名,用户电话,收货地址,商品编号,商品名称,数量,价格,订单状态,支付状态.....
可唯一标识属性:订单号
存储特点:永久存储(分表,分库存储)
- 购物车模块:用于保存用户购物时选的商品
可唯一标识属性:(用户名,商品编号,加入时间),购物车编号
存储特点:不用永久存储(设置归档,清理规则)
- 供应商模块:用于保存供应商信息
包括属性:供应商编号,供应商名称,联系人,电话,营业执照,供应商品.....
可唯一标识属性:供应商编号,营业执照
存储特点:永久存储
ER图
逻辑设计:
1.将需求转化为数据库的逻辑模型
2.通过ER图的形式对逻辑模型进行展示
3.同所选用的具体的DBMS系统无关
常用的DBMS系统:
商业数据库:Oracle;SQLServer------->两种数据库适用于企业级项目
开源数据库:MySQL;PgSQL---------->两种数据库适用于互联网项目
相关阅读
Oracle数据库名(DB_NAME)、实例名(INSTANCE_NAME)、服务名
1、数据库名即下图的全局数据库名,实例名即下图的SID 查询数据库名称SQL:SELECT NAME FROM V$DATABASE; 查询数据库当前实例名: S
Designer Fund 在过去的几年中,同许多顶级的创业公司合作过,并且在这个过程中,自己的设计团队也逐步发展壮大。这些初创公司打造出了
1.LVDS基础、原理、图文讲解LVDS是一种低摆幅的差分信号技术,它使得信号能在差分PCB 线对或平衡电缆上以几百Mbps的速率传输,其低压
本文参考自狄泰软件学院——《12月门徒计划》 核心:将现实世界直接映射到软件世界 意图:便于沟通和理解,降低复杂性,增加维护性 要点
1、新建Oracle数据库备份目录mkdir -p /backup/oracledata 2、新建Oracle数据库备份脚本vi /backup/oracledata/ordatabak.sh