最近在一个二层数据库项目中,开始时,我把SQL语句直接用在FORM中.但慢慢的发现,这样做会有很多的问题.1.不能集中管理这些与数据相关的操作.维护不方便.
2.原来与数据相关的操作是有机会重用的.于是,我把FORM和这些对SQL的数据操作分开了.与数据操作的都写在一个个类及方法中.FORM要做与数据相关的操作,就使用参数调用这些相关类的方法.不知道这样是不是叫分层?这样做,我发现要多写一些附加的代码,但同时又发现结构是清淅及解决了数据操作的重用性了.可是FORM中编辑和查询用到的数据集,我还是放TADOQUERY在FORM中直接使用它.听说真正的分层是FORM中永远用不到一条SQL才叫分层.我现在这种情况,利乎弊乎?

解决方案 »

  1.   

    这要看系统的要求了,多层系统和客户端有没有sql语句没什么直接联系。客户端没有任何直接的和数据层的操作当然是最理想的,这要求客户端的网络服务极小化,基本都是响应式的操作,有很多系统都是这样子的,例如大多数的网络游戏都是这样,都是由中间层和数据层通讯,将结果传回客户端,这些数据都很小,可以在网络上很快的传输完毕,那客户端基本就不用什么sql语句了。