对数据库表示上的一点想法

    在以前的Web编程中,总是喜欢对每一个表建立两个类,一个类专门用来表示相对应的表,另外一个用来对这个类进行操作。按照高内聚和低耦合的思想,这样做的话会使这两个类又很高的耦合性,以至于缺乏灵活性。假如有一次我要改动一下这个数据表,我必须同时改动这两个类。这样的话太麻烦。现在的想法是在和表对应的类里面里面增加一些方法,来对其自身进行描述。我可以在类里面加入一个CreateDeleteSql的方法,可以加入CreateInsertSql和CreateUpdateSql的方法。这样的话,操作类就不必要考虑具体的构造Sql语句的方法,而只需要调用对象的方法就可以了。同理,我也可以把填充数据类的方法添加进去。如果以后真的要对表进行修改的话,只要改动数据类就可以了。我的想法是增加类的自描述能力就是增加了类的内聚性,不知道这个想法对不对。

     另外的一个想法是为所有的操作类构造一个基类。其实这应该是一个早该想到的问题。我觉得以前之所以没想到是因为做得多而想得少。首先,当一个数据库有很多个表的时候,我会写很多个操作类,并且这些类是相互独立的。但实际上他们拥有很多共同点,比如对数据库的增删改等操作。这样的话我可以写一个基类完成这些工作,其他的类从这个基类继承就可以了。

   ( 本人水平有限,发表Blog的唯一目的是记录自己的学习历程,若觉得观点很浅薄,请多多包涵)

posted on 2004-06-05 14:54  sfsdfw  阅读(934)  评论(3编辑  收藏  举报

导航