天天看点

数据库表动态列的设计

在我们设计数据库时,经常会遇到这样的问题,就是表中的某个是不固定的,随着用户需求的变化,该列可能会增加等问题,

就像上图中的灌溉方式:目前可能有三种灌溉方式,

可是以后随着用户的需求增加,又会有新的灌溉方式,如:人工灌溉之类的,

遇到此类问题,通常会有两种解决方案,

一:新建一子表,

该表结构大概如下:

编号   渠灌   喷灌   水车  Class1  Class2 ......

就是在建表时会首先预留几个列,为了以后的扩展用,

这样的方案虽然简单,但是也会体现出下列几种问题,

1:如果以后要新增个人工灌溉,那我们新增的人工灌溉如何与数据库中的列进行绑定?

2:而且建表时会首先预留列也不好控制,到底预留几列才算合适。。。。

二:在增加灌溉方式的时候,要动态的向数据库中 增加字段,(

那前提得在前台绑定下的,

比如:渠灌是对应数据库表中的哪个字段,喷灌是对应数据库表中的哪个字段等等

如果我们遇到的问题比较简单我们一搬会选择第一种方案,

如果我们遇到的业务比较复杂,我们见意还是选择第二方案,

这样以后我们的维护也会简单的多,

本文转自左正博客园博客,原文链接:http://www.cnblogs.com/soundcode/archive/2011/04/15/2017254.html,如需转载请自行联系原作者