Doctrine ORM Custom Column Collation
doctrine-orm, orm, symfony
Solution
This has been added by now if you (or someone else) still need, see column annotation docs
Example: In annotations:
/**
* @var string
*
* @ORM\Column(type="string", length=64, nullable=false, options={"collation":"utf8_bin"})
*/
private $code;
In Yaml:
Your\Nice\Entity:
fields:
code:
type: string
length: 64
options:
collation: utf8_bin # Although the recommendation is the utf8mb4* set now.
This is supported by all common database drivers now.
Problem
I'm trying to set custom column collation as in Doctrine documentation: - http://doctrine-dbal.readthedocs.org/en/latest/reference/schema-representation.html and - http://doctrine-orm.readthedocs.org/en/latest/reference/annotations-reference.html using `@ORM\Column(name="body", type="string", length=140, options={"customSchemaOptions"={"collate"="utf8mb4_unicode_ci"}})` but when I update the schema it always goes back to utf8_unicode_ci (when I set it manually for example). Any ideas?