Access开发培训
网站公告
·Access专家课堂QQ群号:151711184    ·Access快速开发平台下载地址及教程    ·欢迎加入Access专家课堂微信群!    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > 程序人生

【Access小品】解决个球--问题的高级处理手段

时 间:2014-12-17 09:32:48
作 者:煮江品茶   ID:10802  城市:武汉
摘 要:【Access小品】解决个球--问题的高级处理手段
正 文:

  解决问题的前提是存在一个问题,这句话似乎听起来没什么意义。你会说:这句话是废话,问题不存在还解决个球呀?你的这个反问,恰恰是给出了解决某类问题的方向。这是哪种类型的问题呢?在回答之前,先看两个例子。


  例子一:某版友的订单表中包含:订单号、客户名称、电话、地址、付款方式等字段,问如何更改某条记录客户的名称时,同时更改其他相同订单号记录的客户名称、电话、地址。(http://www.accessoft.com/bbs/showtopic.asp?id=22926


  例子二:某版友有客户表、联系人表、订单表,问删除联系人或者客户时,如果相关表中存在对应的联系人或客户如何给出提示。(http://www.accessoft.com/bbs/showtopic.asp?id=22880


  诸如此类的问题还有很多,对这些问题进行分析后可以发现,这类问题的共同之处就是无意义的伪问题。对于伪问题的解决方法,就是消灭问题。就像你所知道的:问题不存在了,还解决个球。解决此类问题的关键,在于如何甄别问题本身的真伪,以及如何去消灭一个伪问题,使之不成为问题。我们可以以上两个伪问题的解决来说明这种处理方法。


  在例子一中,产生伪问题的原因是数据表结构设计部合理,当我们将客户名称、电话、地址这三个字段从订单表中剥离出来,组成一个新的客户表后,例子一的问题就已经不存在了,因此也就消灭了这个伪问题。


  在例子二中,实际上是有无必要进行自定义提示的问题,更普遍的说法是有无必要进行优雅而非唐突的处理。我们知道,当在关系视图中建立了表间关系,只要不将这种表间关系设置为联级删除,那么系统就会在删除存在外键记录时,提示不能删除,并中断程序。通常我们将系统提供的这种处理叫做“唐突的处理”,如果我们设置自定义提示或采取一些判断,就可以避开系统“唐突的处理”,而采取一种更优雅的方式。


  问题不在于我们用什么办法来做优雅的处理,而在于什么情况下去做优雅处理。我们知道,客户表、联系人表是一个系统的基础资料,其删除的权限是需要控制在非常小的范围内的。也就说,绝大多数用户是不具有删除客户表和联系人表的权限,而只有系统管理员、资料维护员这类系统角色具备这个权限。在一个很少人使用的权限中,去做优雅处理是没有什么必要的。优雅的处理通常是要面对大多数用户,使他们感觉程序是流程而没有意外的。由此我们不难判断,例子二是一个伪问题,无需做什么处理。


  到此我们基本窥见到了伪问题以及对伪问题的处理方法,我们可以总结一下了。对于问题,首先我们需要的不是就问题解决问题,而是首先判断它是不是伪问题,看看能否消灭伪问题。而消灭伪问题,需要根据情况来做出偷梁换柱(例子一)、置之不理(例子二)等处理。



Access软件网官方交流QQ群 (群号:54525238)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助