Symfony2 Doctrine blob类型

时间:2015-02-13 09:51:43

标签: php mysql symfony doctrine-orm

我有一个我正在使用的遗留数据库,它有二进制列并在其中存储一些字符串(我知道这是愚蠢的,但我不允许改变它)。 我有问题,那个blob中的那些字符串存储在< UTF-16LE' charset,但我通过在我的getter中使用php iconv函数解决了它。

return iconv('UTF-16LE', 'UTF-8', $this->binstring);

现在的问题是有教条注释

/**
 * @var string
 *
 * @ORM\Column(name="colname", type="string", nullable=true)
 */
 private $binstring;

并且数据库中的列类型是" BINARY(40)"当我直接使用doctrine迁移或更新架构时,它会尝试将该类型更改为" VARCHAR"这是不受欢迎的行为,我想消除它。我怎么能这样做?