在更新cakephp时添加带有主键迁移的列

mdfafbf1  于 2022-11-11  发布在  PHP
关注(0)|答案(2)|浏览(121)

我正在用Phinx在cakephp 3中编写迁移脚本。我需要在使用迁移更新表(使用update()命令)时添加一个带有主键的列。但是当我运行脚本时,它创建了列,但不包括主键。

$table->addColumn('book_id', 'integer', [
     'default' => null,
     'limit' => 11,
     'null' => true
  ])->addPrimaryKey('book_id');
  $table->update();

谢谢

ut6juiuv

ut6juiuv1#

根据文件:
处理主键只能在表创建操作中完成。这是由于插件支持的某些数据库服务器的限制。

qkf9rpyu

qkf9rpyu2#

public function change(): void
{
    $this->table('table_name')
    ->changePrimaryKey(['column1', 'column2'])
    ->save();
}

相关问题