sql某个字段自动加减

#1 gflhx

每次执行sql语句的时候,让一个字段自动减5,

我是这样写的

$sql_yue = "update driver_info set info_residual = info_residual-5 where driver_number = 'A001'";
         $data_yue = $tb->runSql($sql_yue);

   原来 info_residual 是10的话,一执行就成了0了,应该是5的。
好像是执行了2次.这是为什么?

2013-02-28 12:58:26

#2 jake

可以在代码下面加上echo,看看是否你的代码真的执行了2次。

如果是执行2次,一般情况会是:

1. 你在构造函数里面调用过一次。
2. 看看你的404页面,是否已经调用过当前语句一次在404。

用PHP的debug_print_backtrace函数可以跟踪语句的执行情况。

2013-02-28 13:03:08

#3 coolhpy

LZ可以直接这样啊,就不用拼SQL了
$tb->decrField(array('driver_number' => 'A001'), 'info_residual', 5); 

2013-02-28 14:01:12

#4 改变命运2023

coolhpy 发表于 2013-2-28 14:01
LZ可以直接这样啊,就不用拼SQL了
我也是才知道原来框架里新添加了这个方法,方便以后使用了,呵呵

2013-04-12 15:06:59