日期:2014-05-17  浏览次数:20661 次

问个小问题,各位在实际项目中,对数据库中数据的状态怎么标识
比如说,一条数据的状态为"01" 代表可以进行A操作
状态为"02",代表禁止A操作,可以进行B操作

这类的.

我遇到的用的是 数据添加字段status 
"01""02"...
操作的时候就查询出来,验证是否可操作.如
if(bean.getStatus().equal("01")){
   //进行操作A
}
else if(bean.getStatus().equal("02")){
  //进行操作B
}

可是总觉得怪怪的...也说不出哪怪

第二个问题:
在java中,比如操作完了一条数据,需要把它的状态设为"02"
bean.setStatus("02");
就是代码中充斥着这些,也该觉怪怪的 

第三个问题:
这个可以归纳为"锁"数据.和数据状态迁移吧.

不知道有没有别的更好的处理方式.
数据 java

------解决方案--------------------
差不多吧,我们的数据库中也是这样处理的。订单状态从0到1到3到6到15.

不过程序上的逻辑稍有不同,因为每步状态变化都代表不同的业务逻辑,所以是封装在不同的Java类或者PL/SQL package中,没有这么多if else.
------解决方案--------------------
区分状态不是很普通么
重要的业务中间状态还会单独建字段保留