CDbCommand не удалось исполнить SQL-запрос: SQLSTATE[22007]: Invalid datetime format: 1366 Incorrect integer value: '' for column дэбэ1.табле1.collection_id at row 1. The SQL statement executed was: INSERT INTO табле1 (visible, section_id, type_id, category_id, collection_id, product_id) VALUES (:yp0, :yp1, :yp2, :yp3, :yp4, :yp5). Bound with :yp0=1, :yp1='3', :yp2='44', :yp3='133', :yp4='', :yp5='703736'
Как мы не видим из ошибки, происходить попыт вставить "" в поле INTEGER, в районе :yp4 за що на нас ругаеться ёбный mysql. Зачем заниматься этой хуйнёй в 2023 году - сложно сказать, но аы попробуем...
Ой вей! Это всё ёбаный MYSQL STRICT MODE включён по умолчанию??? Что жи делать
SELECT @@GLOBAL.sql_mode
STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
Но блогодоря хзреймфорку юйюйы, мы можем добавить в db.php строку
'initSQLs' => array('SET sql_mode = \'ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION\'',),
которая поможет говнокоду работать дальше, убрав ёбанный STRICT_TRANS_TABLES..
Спасибо, о великий юыы
"protected/config/db.php": ({text}) ->
text = text.replace(
"return array(",
"""
return array(
'initSQLs' => array('SET sql_mode = \\'ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION\\'',),
"""
)
return text