如何解决Discuz!数据pre_common_stat报错?

分类:Mysql,问题集 | 作者:凹凸曼 | 发表于2015/12/04 如何解决Discuz!数据pre_common_stat报错?已关闭评论

最近一段时间数据库过12点后容易报错,错误如下:

(1062)Duplicate entry ‘20151203’ for key ‘PRIMARY’

INSERT INTO common_stat SET ‘daytime’=’20151203’,’login’=1

DISCUZ脚本处理这个触发时,有人点击网页才能进行处理,

这里说明同时并发的情况下,重复触发新建入库了。

这里就没有去查具体原因造成重复时间入库。

上解决办法:找到 source/class/table/table_common_stat.php 文件

函数 public function updatestat 里的DB::insert($this->_table, array(‘daytime’=>$nowdaytime, $type=>$num)); //更改为:DB::insert($this->_table, array(‘daytime’=>$nowdaytime, $type=>$num),true);

结:更改加一个true参数 此函数表示sql执行的  insert 替换为replace,这样就不会重复插入了;

 

本文出自 “凹凸曼” 博客,请务必保留此出处 http://www.apoyl.com/?p=1983

 

 

日志信息 »

该日志于2015-12-04 16:32由 凹凸曼 发表在Mysql, 问题集分类下, 评论已关闭。

目前盖楼

抱歉,评论被关闭

« »