现象
当执行创建发票的操作(包括每日自动化定时任务,或员工/客户下单时),可能会看到“Oops!”完整性约束冲突错误提示。
完整错误信息如下:
PDOException: SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '2147483647' for key 'tblinvoices.PRIMARY' in /path/to/whmcs/vendor/illuminate/database/Connection.php:464
原因
“发票起始编号”设置为超过2,147,483,648(21亿4,748万3,648)的整数值,超出了MySQL®的容纳范围。
解决方案
-
使用phpMyAdmin等工具,对WHMCS的MySQL数据库执行以下查询,并记录结果:
-
登录WHMCS管理后台。
-
进入 设定 > 系统设定 > 常规设定 中的“发票”标签页。
-
输入步骤1中记录的值作为“发票起始编号”。
-
点击 保存更改。
保存后“发票起始编号”会显示为空,这是正常现象。