MySQL Error number: 3964; Symbol: ER_WARN_DEPRECATED_SQL_CALC_FOUND_ROWS; SQLSTATE: HY000 报错 故障修复 远程处理
文档解释
Error number: 3964; Symbol: ER_WARN_DEPRECATED_SQL_CALC_FOUND_ROWS; SQLSTATE: HY000
Message: SQL_CALC_FOUND_ROWS is deprecated and will be removed in a future release. Consider using two separate queries instead.
Error Number:3964 ; Symbol: ER_WARN_DEPRECATED_SQL_CALC_FOUND_ROWS ; SQLSTATE: HY000
错误说明:ER_WARN_DEPRECATED_SQL_CALC_FOUND_ROWS错误属于MySQL通知类错误,是由于执行SQL语句时使用了被弃用的SQL函数,导致MySQL无法正确识别语句,而出现了次错误。
常见案例
解决方法:在MySQL 8.0中,SQL_CALC_FOUND_ROWS参数已经被MySQL取消,无法继续使用,为了不出现ER_WARN_DEPRECATED_SQL_CALC_FOUND_ROWS错误,可以使用另一个参数,FOUND_ROWS(), 它可用于统计上一条查询找到的行数。MySQL 8.0 已经支持ANSI SQL标准的ROW_NUMBER函数,可以借此来代替SQL_CALC_FOUND_ROWS的原有功能,建议用户应尽快迁移到新版本中。