Laravel 5.4 PHP Artisan Migrate Prompt Table existiert bereits
我想大声告诉你
我想大声告诉你 2017-05-16 16:47:03
0
2
443

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.

我想大声告诉你
我想大声告诉你

Antworte allen(2)
给我你的怀抱


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

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

或者更小...

大家讲道理

这是因为 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 配置

Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage