1
我试图创建一个自定义映射学说类型,按: http://doctrine-orm.readthedocs.org/projects/doctrine-dbal/en/latest/reference/types.html#custom-mapping-types学说自定义映射型架构更新
我班如下:
<?php
namespace AppBundle\Doctrine\Type;
use Doctrine\DBAL\Types\Type;
use Doctrine\DBAL\Platforms\AbstractPlatform;
/**
* My custom datatype.
*/
class BinaryStringType extends Type
{
public function getSQLDeclaration(array $fieldDeclaration, AbstractPlatform $platform)
{
return $platform->getBinaryTypeDeclarationSQL($fieldDeclaration);
}
public function getDefaultLength(AbstractPlatform $platform)
{
return $platform->getVarcharDefaultLength();
}
public function getName()
{
return 'binarystring';
}
}
?>
而且在config.yml doctrine
部分:
dbal:
types:
binarystring: AppBundle\Doctrine\Type\BinaryStringType
这(种)的作品,但是:运行php bin/console doctrine:schema:update
总是产生一个ALTER TABLE语句,无论如果数据库是最新的或没有。
ALTER TABLE xxxx CHANGE column column VARBINARY(24) DEFAULT NULL;
任何想法如何解决这个问题?
谢谢!
你是什么意思生成一个'ALTER TABLE'语句,它生成的确切语句是什么? –
@JasonRoman在问题中添加了“alter table”语句。 – Karolis