Миграции Cakephp - общая ошибка: 1215 Невозможно добавить ограничение внешнего ключа - PullRequest
0 голосов
/ 26 сентября 2018

У меня проблемы с созданием внешнего ключа в некоторых миграциях.

У меня есть следующее:

20180926184217_Courses.php

public function change()
{
    $table = $this->table('courses', ['id' => true, 'primary_key' => ['id']]);
    $table
        ->addColumn('name', 'string', ['default' => null, 'limit' => 150, 'null' => false])
        ->addColumn('town', 'string', ['default' => null, 'limit' => 50, 'null' => true])
        ->create();
}

20180926191546_Scorecards.php

public function change()
{
    $table = $this->table('scorecards', ['id' => true, 'primary_key' => ['id']]);
    $table
        ->addColumn('course_id', 'integer', ['default' => null, 'limit' => 10, 'null' => false])
        ->addColumn('description', 'string', ['default' => null, 'limit' => 255, 'null' => true])
        ->addColumn('tee', 'string', ['default' => null, 'limit' => 15, 'null' => false])
        ->addForeignKey('course_id', 'courses', 'id', ['delete' => 'SET_NULL', 'update' => 'NO_ACTION', 'constraint' => 'fk_scorecard_course'])
        ->create();
}

Когда я запускаю bin/cake migrations migrate, я получаю следующую ошибку:

Исключение: SQLSTATE [HY000]: Общая ошибка: 1215 Не удается добавить иностранныйключевое ограничение в [* / vendor / robmorgan / phinx / src / Phinx / Db / Adapter / PdoAdapter.php, строка 167] 2018-09-26 19:12:50 Ошибка: [PDOException] SQLSTATE [HY000]:Общая ошибка: 1215 Не удалось добавить ограничение внешнего ключа в * / vendor / robmorgan / phinx / src / Phinx / Db / Adapter / PdoAdapter.php в строке 167

Может кто-нибудь помочь, пожалуйста?Я посмотрел другие ответы здесь, и ни один из них не помог.

Дейв

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...