模式中的Symfony字符串字段导致MySQL TEXT字段

时间:2011-10-18 21:51:58

标签: symfony1 doctrine schema

我正在使用symfony 1.4,并在具有此定义的表中包含一个字段:

subject: { type: string(300), fixed: false, notnull: true }

由此产生的迁移是:

'subject' =>
            array(
             'type' => 'string',
             'fixed' => '0',
             'notnull' => '1',
             'length' => '300',
            ),

运行此迁移会创建MySQL DDL代码,该代码将主题字段设置为TEXT类型而不是varchar(300)

但是,如果我将300更改为200,则迁移会创建varchar(200)类型的字段。

有没有办法强制symfony / doctrine将此字段创建为varchar(300)

1 个答案:

答案 0 :(得分:1)

不是没有编辑学说的代码。

Doctrine_Connection_Mysql表示varchar字段的最大长度为255个字符。这适用于5.0.3之前的mysql,并且doctrine出于兼容性原因使用此值。