Details
-
Type:
Bug
-
Status:
Closed
-
Priority:
Minor
-
Resolution: Cannot Reproduce
-
Affects Version/s: 2.0
-
Fix Version/s: None
-
Component/s: Mapping Drivers, ORM
-
Security Level: All
-
Labels:None
-
Environment:MySQL, pdo_mysql, Symfony2
Description
I'm having issues working with Doctrine2 boolean type. My mapping is basic:
/** * @orm:Column(type="boolean", nullable=false, name="is_deleted") */ protected $isDeleted;
When I'm trying to flush the object with $isDeleted=false (or true), the entity is not being added to the db. However when I set $isDeleted='0' (or '1') everything works fine.
I saw plenty of examples where people were using true and false, instead of '0' and '1'. But with MySQL it doesn't work. Doctrine maps boolean field as TINYINT(1) in MySQL. And I can see in Symfony2 Profiler the parameter in the query is "false"/"true", so here is data type conflict.
Doctrine doesn't transform true/false to 1/0 values.
Issue Links
- relates to
-
DDC-1394
Boolean literals in DQL queries get translated wrongly on PostgreSQL (PDOException)
-