Я хочу добавить внешний ключ для миграции базы данных phinx, но возникает ошибка.
Я хочу использовать camping_id в таблице ставок в качестве внешнего ключа из идентификатора таблицы кампаний.
public function change()
{
$table = $this->table('bids');
$table ->addColumn("value", "integer", ["limit" => 11])
->addColumn("camping_id", "integer", ["limit" => 45])
->addColumn("subscriber_id","integer", ["limit" => 11])
->addColumn("added_date", "datetime")
->addColumn("deleted", "boolean", ["null" => true])
->addColumn("msisdn", "string", ["limit" => 100], ["null" => true])
->addColumn("program_id", "integer", ["limit" => 11], ["null" => true])
->addColumn("status", "string", ["limit" => 45], ["null" => true])
->addForeignKey(['camping_id', 'id'],
'campaigns',
['camping_id', 'id'],
['delete'=> 'NO_ACTION', 'update'=> 'NO_ACTION', 'constraint' => 'camping_id'])
->create();
}
после запуска миграции я получил эту ошибку
PDOException: SQLSTATE[HY000]: General error: 1215 Cannot add foreign key constraint in /var/www/git/vendor/robmorgan/phinx/src/Phinx/Db/Adapter/PdoAdapter.php:167
Stack trace: