教义迁移。在另一列之后添加列

Ahm*_*ed 6 php mysql doctrine-orm

$table = $schema->getTable('agent_documents');
$table->addColumn('name_r', 'string');
Run Code Online (Sandbox Code Playgroud)

如何添加此字段而不是最后一个,而是另一个?

Jak*_*kub 8

Doctrine2 不支持在末尾以外的其他地方添加列。如果您使用 ORM,您不应该关心列顺序。不过,您可以尝试运行 SQL 查询(例如 MySQL),如下所示:

$this->addSql('ALTER TABLE agent_documents ADD name_r VARCHAR(255) NOT NULL AFTER desired_column_name');
Run Code Online (Sandbox Code Playgroud)

  • 实际上列顺序很重要。如果您有一个经常变化的 varchar,它应该总是放在最后。否则,更改 varchar 的内容可能会导致整行的重写。 (2认同)