私房菜 第二讲 数据库封装扩展

来源:互联网 发布:手机淘宝怎么取消售后 编辑:程序博客网 时间:2024/04/29 12:10

 私房菜 第二讲 数据库封装扩展


在第一讲里面,我们谈了数据库底层的封装,今天我们来说说为什么在数据库基础层上再加上一层数据

库业务层,这层的价值什么?另外一些特殊的应用我们怎么处理?
我们先来看一段,已经扩展好的代码:

 

 

 

这个类就是我们封装好的,当我们使用的时候,就可以不考虑这个表名是什么了。同样还能使用基础类

里面的方法。

下面我们来说下,如果我们一个业务会插入2张表的数据怎么办?
当出现这个问题的,我们可以用几种解决办法:
1,扩展业务,也就是说,让业务2步进行。这个属于在设计的时候,解决掉了。
2,在控制层解决,也就是我们在写程序的时候,根据接收到的数据,判断是插入到那个表里。
3,就是在数据层处理了,这个一般是程序已经建立完毕,单表解决了数据存储,到后期发现,单表的检

索速度下降了,采用了主从表的方式。

 

 

完成了分表。
4,还有一种情况,也是分表,这种属于横向分表,也就是根据某一个特定的值,作为分表的标准,比如

我们拿title作为分表的标签。

 

当然我们只是表述了插入时候的各种处理,但是实际上,在更新删除等等的数据库操作上,我们也要做

相应的修改,增加参数才可以解决遮掩的问题。我们就不在这里演示了。

还有一种情况是多库操作:
这样的情况,我们应该如何处理呢?我们现在都是单库操作?
这个需要我们对应的扩展下数据库基础类了,如果我们只是在某一个操作上需要多库操作那么我们只需

要在对应的方法上面处理就可以了,如:

 

如果我们要频繁的多库切换怎么办?
我们现在改造下 上次讲到的数据库基础库的链接函数

 

这里还有一个bug,因为我们在优化的时候,考虑了不多次链接通一个数据的情况,所以这里做了数据操

作句柄的记录,我们要怎么处理呢?
1,不在记录句柄
2,重新构造句柄
我这里就不完善了,留作家庭作业吧。

数据库的操作类封装,到这里算是讲完了。

原创粉丝点击