Details
-
Type:
Bug
-
Status:
Resolved
-
Priority:
Major
-
Resolution: Invalid
-
Affects Version/s: 2.3.1
-
Fix Version/s: None
-
Component/s: Platforms
-
Labels:
-
Environment:PostgreSQL Database
Description
In:
- vendor/doctrine/dbal/lib/Doctrine/DBAL/Platforms/PostgreSqlPlatform.php
The function:
getDateTimeTzFormatString()
only returns one datetime format:
/**
* {@inheritDoc}
*/
public function getDateTimeTzFormatString()
{
//return 'Y-m-d H:i:sO'; // original format
return 'Y-m-d H:i:s.uO'; // format also needed
}
Here is the error I get using the original format:
Could not convert database value "2012-12-07 16:01:52.580789-05" to Doctrine Type datetimetz. Expected format: Y-m-d H:i:s.O
If I use this format: 'Y-m-d H:i:s.uO' it works.
Why would this be a new data type? I understand how to fix the problem with creating my own data type to handle the formatting issue and would even suggest just overriding the data type with
Type::overrideType('datetimetz', 'Doctrine\DBAL\Types\VarDateTimeType'); Type::overrideType('datetime', 'Doctrine\DBAL\Types\VarDateTimeType');But it's not a new data type, it's a formatting issue.