Laravel 5,8 ошибка SQLSTATE [HY000]: общая ошибка: 1005 UUID - PullRequest
0 голосов
/ 11 февраля 2020

Я использую Laravel 5.8 и пакет "goldspecdigital / laravel -eloquent-uuid" , потому что мне нужно использовать UUID4, а вот мой файл миграции:

 public function up()
    {
        Schema::create('images', function (Blueprint $table) {
            $table->bigIncrements('id');
            // $table->timestamps();
            $table->string('path');
            $table->uuid('visit_id');
            $table->foreign('visit_id')->references('id')->on('visits');

        });
    }

Я получаю следующую ошибку:

SQLSTATE [HY000]: общая ошибка: 1005 Невозможно создать таблицу doctors _pharmacy. images (ошибка: 150 «Неправильно сформировано ограничение внешнего ключа») (SQL: изменить таблицу images добавить ограничение images_visit_id_foreign ссылки на внешний ключ (visit_id) visits (id))

Как мне решить эту проблему?

1 Ответ

0 голосов
/ 12 февраля 2020

Обновите schema для visits и images следующим образом. Затем выполните команду php artisan migrate cmd.

visits схема таблицы

public function up()
    {
        Schema::create('visits', function (Blueprint $table) {
            $table->uuid('id')->primary();
            // your column will be here
            ......
            ......
            $table->timestamps();
        });
    }

images схема таблицы

public function up()
{
    Schema::create('images', function (Blueprint $table) {
        $table->bigIncrements('id');
        $table->string('path');
        $table->uuid('visit_id');
        $table->foreign('visit_id')->references('id')->on('visits');

    });
}
...