TYPO3, Extbase: сообщение об ошибке mysqli, команды не синхронизированы

Я пытаюсь обновить действительно старое расширение extbase от другого программиста. Версия TYPO3 - 8.7.13

Следующая функция в моем репозитории выдает ошибку:

"Команды не синхронизированы; вы не можете запустить эту команду сейчас. Doctrine \ DBAL \ Driver \ Mysqli \ MysqliException выброшено в файл /Volumes/web/src/typo3_src-8.7.13/vendor/doctrine/dbal/lib/Doctrine/DBAL /Driver/Mysqli/MysqliStatement.php в строке 249. "

И это функция:

Public Function delete($standort, $month) 
{
    $m = date('m',$month);
    $y = date('Y',$month);

    $sql = "
    DELETE FROM mytable
    WHERE standort = ".$standort." AND FROM_UNIXTIME( monat,  '%m' ) = $m AND FROM_UNIXTIME( monat,  '%Y' ) = $y ";
    $query = $this->createQuery();
    $query->statement($sql);
    $query->execute(TRUE);
 }

с помощью $ query-> execute (FALSE); ошибка не возникает, но sql не выполняется. С помощью $ query-> execute (TRUE); появляется ошибка, но sql будет выполнен.

Кто-нибудь может помочь? Спасибо!


person lisardo    schedule 08.07.2018    source источник


Ответы (1)


А как насчет изменения этого утверждения на Доктрину? Вы можете найти документацию здесь: https://docs.typo3.org/typo3cms/CoreApiReference/8.7/ApiOverview/Database/BasicCrud/Index.html#delete-a-row

person Thomas Löffler    schedule 09.07.2018
comment
Это работает, но: такие функции, как FROM_UNIXTIME, кажутся невозможными с доктриной, поэтому мне пришлось работать в php ... Спасибо! - person lisardo; 28.07.2018