General error: 1525 Incorrect DATETIME

#
General error: 1525 Incorrect DATETIME
Здравствуйте.

При переносе сайта но новый сервер с MySQL 8:

Цитата:
Exception: Query error HY000: SQLSTATE[HY000]: General error: 1525 Incorrect DATETIME value: '0000-00-00 00:00:00'. Query: SELECT SQL_CALC_FOUND_ROWS `informationsystem_items`.* FROM `informationsystem_items` WHERE `informationsystem_items`.`informationsystem_id` = 24 AND ( `informationsystem_items`.`start_datetime` < '2023-04-19 00:52:19' OR `informationsystem_items`.`start_datetime` = '0000-00-00 00:00:00' ) AND ( `informationsystem_items`.`end_datetime` > '2023-04-19 00:52:19' OR `informationsystem_items`.`end_datetime` = '0000-00-00 00:00:00' ) AND `informationsystem_items`.`siteuser_group_id` IN (0, -1) AND `informationsystem_items`.`active` = 1 AND `informationsystem_items`.`closed` = 0 AND `informationsystem_items`.`deleted` = 0 ORDER BY `informationsystem_items`.`sorting` ASC, `informationsystem_items`.`name` ASC LIMIT 10 OFFSET 0
modules/core/database/pdo.php:630 Core_Exception->__construct
modules/core/querybuilder/statement.php:80 Core_DataBase_Pdo->query
modules/core/orm.php:524 Core_QueryBuilder_Statement->execute
modules/core/entity.php:553 Core_ORM->findAll
modules/informationsystem/controller/show.php:615 Core_Entity->findAll
templates/template13/template.htm:224 Informationsystem_Controller_Show->show
modules/template/model.php:103 include
modules/core/page.php:166 Template_Model->execute
modules/core/command/controller/default.php:583 Core_Page->execute
modules/core/router/route.php:195 Core_Command_Controller_Default->showAction
index.php:238 Core_Router_Route->execute


Как можно это исправить?


Модератор
#
Re: General error: 1525 Incorrect DATETIME
https://www.hostcms.ru/hostcms/system-requirements/
Опции в sql-mode не должны содержать ONLY_FULL_GROUP_BY, NO_ZERO_IN_DATE, NO_ZERO_DATE. Отключить их вы можете в конфигурационном файле my.cnf, добавив
sql-mode=""
в секцию [mysqld].
#
Re: General error: 1525 Incorrect DATETIME
mysql> SHOW VARIABLES LIKE '%sql_mode%';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| sql_mode      |       |
+---------------+-------+
1 row in set (0.00 sec)

Ошибка та же
Модератор
#
Re: General error: 1525 Incorrect DATETIME
tcorp,
при пустом sql_mode такой ошибки быть не должно, ее вызывает режим NO_ZERO_DATE. Если период поддержки активен, можете обратиться в поддержку.
#
Re: General error: 1525 Incorrect DATETIME
выполнить в консоле mysql

SET GLOBAL sql_mode = '';
Модератор
#
Re: General error: 1525 Incorrect DATETIME
asniv74,
будет работать до перезагрузки MySQL. Можно в конец bootstrap.php добавить
Core_Database::instance()->query("SET SESSION sql_mode = ''");
Авторизация