在update cakephp上添加包含primarykey迁移的列

时间:2017-03-17 05:25:11

标签: cakephp migration cakephp-3.0 phinx

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

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

由于

2 个答案:

答案 0 :(得分:1)

the Docs

  

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

答案 1 :(得分:0)

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