就我个人的经验来说,数据库虽然在设计上确实需要有一定的经验,但是它并不是最难的。
对于数据的设计其实是对于现实中业务的一种抽象。
就我的习惯的话,我会先对于现实中的业务场景、业务的角色进行分析。
就拿一般的进销存系统来举例吧。
我有一个对于物料管理的仓库,我需要对我的物料的进销存进行管理。
那么我们就需要分析,没有系统的时候,人与人之间的业务是怎么流转的,他们都是通过哪些表单来进行流转的,上下级之间的消息传递和反馈都是怎么进行的。
当知道了业务以后,我们的数据库无非就是对于现实中的业务的一种具现。
对于业务的设计完成以后,就是针对角色的了。
例如:业务的传递都是在业务人员之间的,我们已经整理表单的传递,那角色其实就已经在这些传递中存在了。
但是,业务的角色是业务的角色,我们还要包括财务的角色,那对于财务来说,他需要在哪些环节看到这些业务的单据?并且需要怎么处理?财务的处理结果又包括哪些?不同的处理结果对于下一步的 *** 作又有什么影响。
当我们把这一切的逻辑整理完成后,我们对于数据库的功能上就已经满足了。
接下来的就是抽象数据的分类了。
例如:我们需要对不同的表进行一个分类,我个人喜欢把表分成三种,一种是基础数据表,一种是过程表,一种是结果表。
怎么解释呢?
基础数据表:顾名思义,就是对于基础数据的维护,哪些可以成为基础数据呢?就是我们的业务发生的各个过程中,这些数据都是可以参与其中的,这就是基础数据。
例如:货物的信息,客户的信息。
过程表:就是仅仅在一个过程中使用的表,当这个过程结束了,这个表就没用了。
例如:订单表,付款单表。他们表示的仅仅是订单从下单到最后关闭的这个过程,关闭以后,这个订单表其实我们就不会再去使用它了。
结果表:这个表的数据有一个特点,只允许添加,不允许删除和修改,这个表的数据本身就是对于一种最终结果的表现。
例如:日志表、账单表。
那我们在进行数据库设计的时候,就需要将这些使用情况考虑进去,将不同功能的表进行分离,尽量降低耦合,让相互表的修改不会影响使用。
例如:收款单,我们需要收一笔款的时候,就会生成这个收款单,当款收到后,这个收款单的功能就结束了。
但现实的情况中,可能财务收到了这笔钱,结束了收款单流程后,他发现填错了,本来应该收100,结果收款单写的110。
但是,收款单表示的是过程,当这个过程结束了,我们就不会再需要上一个收款单了,所以,按照我们业务的处理流程,我们应该先生成一笔冲抵的收款单,例如收到-110,然后再生成新的100的收款单。
我们每个月还会有财务统计报表,财务报表因为和现实中的财务账有关,是绝对不允许变动的,因此,这个财务报表就是一个结果表,我们会按月通过批处理程序,将收款单的明细和统计数据放到另一张表中,感觉好像比较冗余,但是这个确实非常必要的。
因为我曾经就遇到过一个情况,我们直接用过程表来进行数据的统计,然后11月30日有一笔收款已经完成了,结果发现收错了,就重新做了个收款单,结果本来已经出了11月结果的账单发生了变化,导致财务实际的处理出现了问题。
因此,数据的冗余有时候是有必要的,我们需要根据不同表的类型进行一些冗余的设计。
对于数据库设计的考虑点还有很多,可能一时半会儿也说不完,大家如果有什么好的思路,也可以在下方评论或关注我给我留言。
全国计算机等级考试二级二级Access考试大纲(2008版) ◆ 基本要求
1 具有数据库系统的基础知识。
2 基本了解面向对象的概念。
3 掌握关系数据库的基本原理。
4 掌握数据库程序设计方法。
5 能使用Access建立一个小型数据库应用系统。
◆ 考试内容
一、数据库基础知识
1 基本概念:
数据库,数据模型,数据库管理系统,类和对象,事件。
2 关系数据库基本概念:
关系模型(实体的完整性,参照的完整性,用户定义的完整性),关系模式,关系,元组,属性,字段,域,值,主关键字等。
3 关系运算基本概念:
选择运算,投影运算,连接运算。
4 SQL基本命令:
查询命令, *** 作命令。
5 Access系统简介:
(1) Access系统的基本特点。
(2) 基本对象:表,查询,窗体,报表,页,宏,模块。
二、数据库和表的基本 *** 作
1 创建数据库:
(1) 创建空数据库。
(2) 使用向导创建数据库。
2 表的建立:
(1) 建立表结构:使用向导,使用表设计器,使用数据表。
(2) 设置字段属性。
(3) 输入数据:直接输入数据,获取外部数据。
3 表间关系的建立与修改:
(1) 表间关系的概念:一对一,一对多。
(2) 建立表间关系。
(3) 设置参照完整性。
4 表的维护:
(1) 修改表结构:添加字段,修改字段,删除字段,重新设置主关键字。
(2) 编辑表内容:添加记录,修改记录,删除记录,复制记录。
(3) 调整表外观。
5 表的其他 *** 作:
(1) 查找数据。
(2) 替换数据。
(3) 排序记录。
(4) 筛选记录。
三、查询的基本 *** 作
1 查询分类:
(1) 选择查询。
(2) 参数查询。
(3) 交表查询。
(4) *** 作查询。
(5) SQL查询。
2 查询准则:
(1) 运算符。
(2) 函数。
(3) 表达式。
3 创建查询:
(1) 使用向导创建查询。
(2) 使用设计器创建查询。
(3) 在查询中计算。
4 *** 作已创建的查询:
(1) 运行已创建的查询。
(2) 编辑查询中的字段。
(3) 编辑查询中的数据源。
(4) 排序查询的结果。
四、窗体的基本 *** 作
1 窗体分类:
(1) 纵栏式窗体。
(2) 表格式窗体。
(3) 主/子窗体。
(4) 数据表窗体。
(5) 图表窗体。
(6) 数据透视表窗体。
2 创建窗体:
(1) 使用向导创建窗体。
(2) 使用设计器创建窗体:控件的含义及种类,在窗体中添加和修改控件,设置控件的常见属性。
五、报表的基本 *** 作
1 报表分类:
(1) 纵栏式报表;
(2) 表格式报表。
(3) 图表报表。
(4) 标签报表。
2 使用向导创建报表。
3 使用设计器编辑报表。
4 在报表中计算和汇总。
六、页的基本 *** 作
1 数据访问页的概念。
2 创建数据访问页:
(1) 自动创建数据访问页。
(2) 使用向导数据访问页。
七、宏
1 宏的基本概念。
2 宏的基本 *** 作:
(1) 创建宏:创建一个宏,创建宏组。
(2) 运行宏。
(3) 在宏中使用条件。
(4) 设置宏 *** 作参数。
(5) 常用的宏 *** 作。
八、模块
1 模块的基本概念:
(1) 类模块。
(2) 标准模块。
(3) 将宏转换为模块。
2 创建模块:
(1) 创建VBA模块:在模块中加入过程,在模块中执行宏。
(2) 编写事件过程:键盘事件,鼠标事件,窗口事件, *** 作事件和其他事件。
3 调用和参数传递。
4 VBA程序设计基础:
(1) 面向对象程序设计的基本概念。
(2) VBA编程环境:进入VBE,VBE界面。
(3) VBA编程基础:常量,变量,表达式。
(4) VBA程序流程控制:顺序控制,选择控制,循环控制。
(5) VBA程序的调试:设置断点,单步跟踪,设置监视点。
◆ 考试方式
1 笔试:90分钟,满分100分,其中含公共基础知识部分的30分。
2 上机 *** 作:90分钟,满分100分。
上机 *** 作包括:
(1) 基本 *** 作。
(2) 简单应用。
(3) 综合应用
数据库,顾名思义就是存放数据的仓库,严格地讲就是长期储存在计算机内,有组织的,可共享的大量数据的集合!
数据表是数据库中最重要的组成部分之一,一个数据库中可能包含若干个数据表!
数据库的基本 *** 作包括:1数据库的建立、浏览与修改,2数据库的排序和索引,3数据库信息的查询与统计
数据表的基本 *** 作:1表的创建和使用,2记录的处理,3分类,索引和查询,4数据统计和汇总
数据的基本 *** 作:1数据的添加和删除,2数据的简单查询,3数据的更新
以上就是关于数据库设计技巧全部的内容,包括:数据库设计技巧、计算机二级考试Access数据库考试内容、数据库的基本常识等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)