suchen

Heim  >  Fragen und Antworten  >  Hauptteil

Laravel 5.4 PHP Artisan Migrate Prompt Table existiert bereits

Ausführen, wenn die Datenbank keine Tabellen enthält

php artisan migrate

Nach der Ausführung gibt es nur noch zwei Tabellen in der Datenbank: Migrationen und Benutzer

Erneut ausführen

php artisan migrate

Es werden keine neuen Einträge zur Datenbank vorgenommen. Lösen.

我想大声告诉你我想大声告诉你2773 Tage vor445

Antworte allen(2)Ich werde antworten

  • 给我你的怀抱

    给我你的怀抱2017-05-16 16:49:03


    索引的长度超过了mysql的限制,在migrate之前,设置

    $table->string('email' , 32)->index();
    $table->string('token' , 128)->index();

    或者更小...

    Antwort
    0
  • 大家讲道理

    大家讲道理2017-05-16 16:49:03

    这是因为 5.4 默认使用了utf8mb4 字符集, 在 MySQL / MariaDB .

    https://laravel.com/docs/5.4/migrations#indexes

    只要安装文档中的示例修改就好了.

    在 AppServiceProvider.php, boot方法中, 调用 Schema::defaultStringLength 方法

    
    // AppServiceProvider.php
    
    
    use Illuminate\Support\Facades\Schema;
    
    /**
     * Bootstrap any application services.
     *
     * @return void
     */
    public function boot()
    {
        Schema::defaultStringLength(191);
    }

    顺便, 你也可以开启数据库的 innodb_large_prefix 配置

    Antwort
    0
  • StornierenAntwort