设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

12下一页
返回列表 发新帖
查看: 8208|回复: 10
打印 上一主题 下一主题

[Access本身] 【Access小品】编程演义---数据库开发过程实例讲座(一)

[复制链接]
跳转到指定楼层
1#
发表于 2014-5-10 14:16:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 todaynew 于 2014-5-11 08:48 编辑

  今天在论坛看到版友大山同志一个关于将Excel表格做出数据库的问题,这是一个涉及到农技人员监测农作物的管理问题。他将十几个Excel表打包上传到论坛,我大体浏览看了一下这些表格,觉得是一个比较有意思的问题。于是决定对他进行开发指导,便留言让他加我的QQ。也许该同志并不在线,亦或对我不信任,反正是到现在也没加我。倒是版友沧海桑田同志希望这个实例完成后能拿出来分享。考虑到有不少同志都曾提出过希望了解数据库开发的过程,特别希望知道分析问题和解决问题的方法。于是便决定以此问题来展开一个开发过程的实例讲座,希望能对同志们的学习提高一个比较完整的参考。

  数据库开发之初,首先需要进行的是数据库的设计,在这个设计环节先不要过多考虑窗体等方面的问题,要把关注点集中到数据表结构和表间关系的处理上。要想设计出好的数据库,需要对现实的问题进行分析归纳和提炼,这个工作异常重要,也异常困难。这一课的讲座,将阐释一些具体的处理方法。

  通常我们会在开发时得到一些数据,它们会是一些各种各样的表格。分析和观察这些表格,你会发现未来成型的系统需要干些什么事情。比如,我在观察了大山同志的一组数据表后,得出的结论是:他希望做一个农产品生长情况监测管理系统。由这个结论,接下来就是要弄清楚系统的管理主体、客体和管理的过程。通过观察可以看出,管理的主体是基层的农技部门,管理的客体是农作物不同生长期的指标,管理的过程是抽样监测并将数据记录到系统中,并进行定期的分析。

  总体的情况分析完成后,再对细节问题进行分析和归纳。这个过程就需要仔细的观察加上丰富的想象了。大体上可以这样做的:

  第一是查看有哪些数据可以用字典表进行管理。字典表用来统一保存哪些简单分类的数据,这样做可以避免建立很多的数据表,使后期编程和数据维护的难度都降低。本例中可以提炼出9种分类型数据,这些数据均可纳入字典表管理。

  第二是查看有哪些数据是层级型的结构,并可以用层级设计的方法在数据表中表现出来。本例中可以很快找到了地区和部门应该是层级结构数据,可以分别用两个表保存它们。这里需要提醒的是,但凡具有层级结构的数据,都尽可能用一个数据表来保存,不要按层级设计多个数据表。

  第三是观察监测的类型有哪些?通过观察发现,监测实际上分为三大类,第一类是日常的监测,第二类是灾害性监测,第三类是收成结果监测。其中前两类以观察点为对象,后一类对象的范围不清晰。这三种对象虽然在现实的业务作业中有比较大的差异。但从数据库设计的角度来看,这些差异并不影响一致性的数据处理。

  第四是观察三类监测的具体指标,它们有些是技术性的指标有些是经济性的指标,但大多数都是数字型的。无论它们用于何种监测,无论它们在什么阶段使用,都可以抽象出来它们就是一个数据型的监测指标。有了这个抽象,就可以对它们进行一致性的数据处理。

  大体做完这些分析后,就是具体的数据库设计了。这一步的重点是先确立表间关系,而不是设计具体的数据表。确立表间关系,是说在头脑中先形成数据表间的联系。这个时候,你需要将表想象为一个抽象的对象,比如部门表你抽象的是一个部门,这时并不需要想象出部门表中包含什么字段。人员表你只需要抽象为人员,这样你就能想象出来,部门与人员是一对多关系了。这是一个最简单的表间关系,很容易想象出来。比较复杂的是有些数据表是多父表,或多子表,这种情况就看你的脑瓜子灵光与否了。

  表间关系确立下来后,就是具体的每个数据表的结构设计了,这是一个基础的东西,在此不赘述。

  实际上的分析和思考过程,并不是按部就班进行的,很多是基于习惯的下意识反映。通常当你有了经验后,很多复杂的思考和分析,都是在瞬间完成的,只是你自己不一定意识到了这些思维经过了些什么过程而已。我这样归纳一二三四五,只是告诉同志们,这些是我认为的一些重点,以便提醒同志们注意到这些问题。

  以下的示例中,有大山同志提供的Excel表,和我据此设计出来的数据库,同志们可以参考一下。接下来我将再这个数据库的基础上,讲解窗体设计,功能的代码实现等章节。有兴趣的话,你可以跟我一起做,或者用你的方法去完成,看看最后的系统哪种更为合理。

下一课



示例:


视图:









本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

评分

参与人数 1经验 +30 收起 理由
admin + 30 (技术)原创精品教程

查看全部评分

本帖被以下淘专辑推荐:

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏5 分享分享 分享淘帖2 订阅订阅

点击这里给我发消息

2#
发表于 2014-5-10 14:20:37 | 只看该作者
32个赞
回复

使用道具 举报

3#
发表于 2014-5-10 18:15:30 | 只看该作者
搬个板凳,认真听讲,谢谢版主!
4#
发表于 2014-5-28 12:35:01 | 只看该作者
32个赞
回复

使用道具 举报

点击这里给我发消息

5#
发表于 2014-9-15 21:08:04 | 只看该作者
学习一下
回复

使用道具 举报

6#
发表于 2016-4-26 15:39:56 | 只看该作者
好好学习一番
7#
发表于 2016-4-26 15:50:34 | 只看该作者
下载学习
回复

使用道具 举报

8#
发表于 2016-4-26 15:50:49 | 只看该作者
32个赞
回复

使用道具 举报

9#
发表于 2016-4-26 16:03:40 | 只看该作者
搬个板凳,认真听讲,谢谢版主!
10#
发表于 2016-4-27 20:16:18 | 只看该作者
不错的教程,学习了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-5-10 12:25 , Processed in 0.099996 second(s), 38 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表