Mysql
 sql >> Database >  >> RDS >> Mysql

Doctrine non persiste l'entità con valori booleani e PDO::ATTR_EMULATE_PREPARES =false in Mysql

risposta di gseric funzionerà ma con l'effetto di idratare le tue entità con numeri interi. Per ottenere ancora booleani nelle tue entità puoi semplicemente estendere BooleanType di Doctrine :

class BooleanToIntType extends \Doctrine\DBAL\Types\BooleanType
{
    public function getBindingType()
    {
        return \PDO::PARAM_INT;
    }
}

Quindi, nel bootstrap dell'applicazione:

\Doctrine\DBAL\Types\Type::overrideType('boolean', BooleanToIntType::class);