审批数据库设计
⑴ 数据库设计的基本步骤是什么
(1)需求分析阶段:需求收集和分析,得到数据字典和数据流图。
(2)概念结构设计阶段:对用户需求综合、归纳与抽象,形成概念模型,用E-R图表示。
(3)逻辑结构设计阶段:将概念结构转换为某个DBMS所支持的数据模型。
(4)数据库物理设计阶段:为逻辑数据模型选取一个最适合应用环境的物理结构。
(5)数据库实施阶段:建立数据库,编制与调试应用程序,组织数据入库,程序试运行。
(6)数据库运行和维护阶段:对数据库系统进行评价、调整与修改。
⑵ 简述数据库设计过程
数据库设计过程分为以下六个阶段:
1、需求分析阶段
准确理解和分析用户需求(包括数据和处理),它是整个设计过程的基础,也是最困难、最耗时的一步。
2、概念结构设计阶段
是整个数据库设计的关键,通过对用户需求的集成、归纳和抽象,形成了一个独立于特定数据库管理系统的概念模型。
3、逻辑结构设计阶段
将概念结构转换为DBMS支持的数据模型,对其进行优化。
4、数据库物理设计阶段
为逻辑数据模型选择最适合应用程序环境的物理结构(包括存储结构和存取方法)。
5、数据库实现阶段
根据逻辑设计和物理设计的结果,使用数据库管理系统提供的数据语言、工具和主机语言,建立数据库,编写调试应用程序,组织数据仓库,并进行试运行。
6、数据库运行维护阶段
数据库应用系统经试运行后可投入正式运行,在数据库系统运行过程中,需要不断地对其进行评估、调整和修改。
注:在设计过程中,将数据库的设计与数据库中数据处理的设计紧密结合起来,在每个阶段同时对这两个方面的要求进行分析、抽象、设计和实现,相互借鉴和补充,从而完善这两个方面的设计。
(2)审批数据库设计扩展阅读:
数据库设计技术
1、清晰的用户需求:作为计算机软件开发的重要基础,数据库设计直接反映了用户的需求。数据库必须与用户紧密沟通,紧密结合用户需求。在定义了用户开发需求之后,设计人员还需要反映具体的业务关系和流程。
2、注意数据维护:设计面积过大、数据过于复杂是数据库设计中常见的问题,设计人员应注意数据维护。
3、增加命名规范化:命名数据库程序和文件非常重要,不仅要避免重复的名称,还要确保数据处于平衡状态。为了降低检索信息和资源的复杂度和难度,设计人员应了解数据库程序与文件之间的关系,并灵活使用大小写字母命名。
4、充分考虑数据库的优化和效率:考虑到数据库的优化和效率,设计人员需要对不同表的存储数据采用不同的设计方法。在设计中,还应该使用最少的表和最弱的关系来实现海量数据的存储。
5、不断调整数据之间的关系:不断调整和简化数据之间的关系,可以有效减少设计与数据之间的联系,进而为维护数据之间的平衡和提高数据读取效率提供保障。
6、合理使用索引:数据库索引通常分为聚集索引和非聚集索引,这样可以提高数据搜索的效率。
参考资料来源:网络-数据库设计
⑶ 数据库设计步骤
1.需求分析阶段:分析客户的业务和数据处理需求;
2.概要设计阶段:设计数据库的E-R模型图,确认需求信息的正确和完整;
3.详细设计阶段:将E-R图转换为多张表,进行逻辑设计,并应用数据库设计的三大范式进行审核;
4.代码编写阶段:选择具体数据库进行物理实现,并编写代码实现前端应用;
5.软件测试阶段:……
6.安装部署:……
⑷ 数据库设计的基本步骤
数据库设计的基本步骤
按照规范设计的方法,考虑数据库及其应用系统开发全过程,将数据库设计分为以下6个阶段
1.需求分析
2.概念结构设计
3.逻辑结构设计
4.物理结构设计
5.数据库实施
6.数据库的运行和维护
在数据库设计过程中,需求分析和概念设计可以独立于任何数据库管理系统进行,逻辑设计和物理设计与选用的DAMS密切相关。
1.需求分析阶段(常用自顶向下)
进行数据库设计首先必须准确了解和分析用户需求(包括数据与处理)。需求分析是整个设计过程的基础,也是最困难,最耗时的一步。需求分析是否做得充分和准确,决定了在其上构建数据库大厦的速度与质量。需求分析做的不好,会导致整个数据库设计返工重做。
需求分析的任务,是通过详细调查现实世界要处理的对象,充分了解原系统工作概况,明确用户的各种需求,然后在此基础上确定新的系统功能,新系统还得充分考虑今后可能的扩充与改变,不仅仅能够按当前应用需求来设计。
调查的重点是,数据与处理。达到信息要求,处理要求,安全性和完整性要求。
分析方法常用SA(Structured Analysis) 结构化分析方法,SA方法从最上层的系统组织结构入手,采用自顶向下,逐层分解的方式分析系统。
数据流图表达了数据和处理过程的关系,在SA方法中,处理过程的处理逻辑常常借助判定表或判定树来描述。在处理功能逐步分解的同事,系统中的数据也逐级分解,形成若干层次的数据流图。系统中的数据则借助数据字典(data dictionary,DD)来描述。数据字典是系统中各类数据描述的集合,数据字典通常包括数据项,数据结构,数据流,数据存储,和处理过程5个阶段。
2.概念结构设计阶段(常用自底向上)
概念结构设计是整个数据库设计的关键,它通过对用户需求进行综合,归纳与抽象,形成了一个独立于具体DBMS的概念模型。
设计概念结构通常有四类方法:
自顶向下。即首先定义全局概念结构的框架,再逐步细化。
自底向上。即首先定义各局部应用的概念结构,然后再将他们集成起来,得到全局概念结构。
逐步扩张。首先定义最重要的核心概念结构,然后向外扩张,以滚雪球的方式逐步生成其他的概念结构,直至总体概念结构。
混合策略。即自顶向下和自底向上相结合。
3.逻辑结构设计阶段(E-R图)
逻辑结构设计是将概念结构转换为某个DBMS所支持的数据模型,并将进行优化。
在这阶段,E-R图显得异常重要。大家要学会各个实体定义的属性来画出总体的E-R图。
各分E-R图之间的冲突主要有三类:属性冲突,命名冲突,和结构冲突。
E-R图向关系模型的转换,要解决的问题是如何将实体性和实体间的联系转换为关系模式,如何确定这些关系模式的属性和码。
4.物理设计阶段
物理设计是为逻辑数据结构模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法)。
首先要对运行的事务详细分析,获得选择物理数据库设计所需要的参数,其次,要充分了解所用的RDBMS的内部特征,特别是系统提供的存取方法和存储结构。
常用的存取方法有三类:1.索引方法,目前主要是B+树索引方法。2.聚簇方法(Clustering)方法。3.是HASH方法。
5.数据库实施阶段
数据库实施阶段,设计人员运营DBMS提供的数据库语言(如sql)及其宿主语言,根据逻辑设计和物理设计的结果建立数据库,编制和调试应用程序,组织数据入库,并进行试运行。
6.数据库运行和维护阶段
数据库应用系统经过试运行后,即可投入正式运行,在数据库系统运行过程中必须不断地对其进行评价,调整,修改。
⑸ 数据库处理问题(审批流程定义)
1、用户表
用户ID
用户角色(1:业务员,2:经理,3:总经理,4:总裁。。。)
用户姓名
2、客户表
客户ID
客户名称
3、业务员客户表
用户ID(其实就是用户表里的用户角色为业务员的用户)
客户ID
4、业务员移交客户申请表
申请人用户ID
申请移交的客户ID
审批状态(0:审批中,1:已审批。。。。)
移交后用户ID
5、请假表
用户ID
请假开始时间
请假结束时间
请假类别(1:事假、2:病假、3:婚假。。。。。)
审批状态(0:审批中,1:已审批。。。。)
6、周报表
用户ID
周报月份
审批状态(0:临时保存,1:已提交,2:经理已审批,3:总经理已审批。。。。)
⑹ 什么是数据库设计试述数据库设计的步骤
答:(1)需求分析阶段:需求收集和分析,得到数据字典和数据流图。 (2)概念结构设计阶段:对用户需求综合、归纳与抽象,形成概念模型,用E-R图表示。(3)逻辑结构设计阶段:将概念结构转换为某个DBMS所支持的数据模型。(4)数据库物理设计阶段:为逻辑数据模型选取一个最适合应用环境的物理结构。(5)数据库实施阶段:建立数据库,编制与调试应用程序,组织数据入库,程序试运行。(6)数据库运行和维护阶段:对数据库系统进行评价、调整与修改。
⑺ 审核流程的数据库一般怎么设计
1、用户表
用户ID
用户角色(1:业务员,2:经理,3:总经理,4:总裁。。。)
用户姓名
2、客户表
客户ID
客户名称
3、业务员客户表
用户ID(其实就是用户表里的用户角色为业务员的用户)
客户ID
4、业务员移交客户申请表
申请人用户ID
申请移交的客户ID
审批状态(0:审批中,1:已审批。。。。)
移交后用户ID
5、请假表
用户ID
请假开始时间
请假结束时间
请假类别(1:事假、2:病假、3:婚假。。。。。)
审批状态(0:审批中,1:已审批。。。。)
⑻ 如何实现OA系统的自定议审批流程的数据库设计
我举一个例子:有的OA系统是要公司客户自己有服务器,然后装到客户的服务器上。可是客户嫌麻烦,所以我想将OA系统(PHP+Mysql)放在自己的服务器上,让公司客户及其员工来注册使用。那么问题来了,原来在客户自己的服务器上数据库也就十几张表,但都放到我的服务器上,每注册一个公司就得增加十几张表,那如果有一万家公司注册数据库不得有几十万张表?跟楼主一样的问题,有一些老牌厂商早就给出来完美答案了,比如华为、天翎都有过类似的问题,这些企业提出的解决方案就很不错,就针对上面的问题,最简单的办法是给每张表加个实例ID,一个公司对应一个实例ID,然后在你的MVC架构中跟DB最近的这一层加个拦截器,每个SQL查询都自动带上实例ID,这样不用对代码做很大改动。后期再根据需要优化,哪些公司合用一张表,哪些单独占用一张表甚至一个数据库,总之具体问题具体对待,需要在运营的过程中根据用户量和业务情况来分析采取对策。
⑼ 多级审核的数据库怎么设计啊
多级审核,这个最好通过权限模块来做。这样,销售部门,在查看市场部的时候,给予权限不足的提示即可。至于多级审核,一样,也可以通过表的设计来实现,没见到你的架构如何,不好多说。
⑽ 数据库设计问题(业务审批流程)
1、用户表
用户ID
用户角色(1:业务员,2:经理,3:总经理,4:总裁。。。)
用户姓名
2、客户表
客户ID
客户名称
3、业务员客户表
用户ID(其实就是用户表里的用户角色为业务员的用户)
客户ID
4、业务员移交客户申请表
申请人用户ID
申请移交的客户ID
审批状态(0:审批中,1:已审批。。。。)
移交后用户ID
5、请假表
用户ID
请假开始时间
请假结束时间
请假类别(1:事假、2:病假、3:婚假。。。。。)
审批状态(0:审批中,1:已审批。。。。)
6、周报表
用户ID
周报月份
审批状态(0:临时保存,1:已提交,2:经理已审批,3:总经理已审批。。。。)
其实具体控制,你要在程序里进行流程控制,并没有你说的那种自动控制,不过这样的表结构设计是可以满足你后期不用再动数据库,只用修改业务流程即可