私はphp artisan migrateコマンドを実行しようとしていますが、ユニーク、インデックスなどのすべての制約に対して構文エラーが発生しています。投稿されたエラーはデフォルトで変更されていませんcreate_users_tableプロセス。この一意制約を電子メール列から削除すると、次の移行で別の制約に対して同じエラーが発生します。私は、エラーメッセージに表示されている「ユニークなデバイス」に間違いがあると思います。それは '一意に追加'する必要があります。Laravel移行制約の構文エラー
エラー
[Illuminate\Database\QueryException]
SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in
your SQL syntax; check the manual that corresponds to your MySQL server version for
the right syntax to use near 'devices unique `users_email_unique`(`email`)'
at line 1 (SQL: alter table `users` devices unique `users_email_unique`(`email`))
[PDOException]
SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in
your SQL syntax; check the manual that corresponds to your MySQL server
version for the right syntax to use near 'devices unique
`users_email_unique`(`email`)' at line 1
移行
Schema::create('users', function (Blueprint $table) {
$table->increments('id');
$table->string('name');
$table->string('email')->unique();
$table->string('password');
$table->rememberToken();
$table->timestamps();
});
.env
APP_NAME=Project
APP_ENV=local
APP_KEY=base64:jRIQ9RxhMYRK9UJXgme1KlA6bd1rA0OGyK96SdBP1nI=
APP_DEBUG=true
APP_LOG_LEVEL=debug
APP_URL=http://project.dev
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=project
DB_USERNAME=homestead
DB_PASSWORD=secret
BROADCAST_DRIVER=log
CACHE_DRIVER=file
SESSION_DRIVER=file
QUEUE_DRIVER=sync
REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379
MAIL_DRIVER=smtp
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
PUSHER_APP_ID=
PUSHER_APP_KEY=
PUSHER_APP_SECRET=
助けてくれてありがとう。
エラーメッセージの画像を投稿しないでください。エラーメッセージをテキストとして完全に投稿してください。また、あなたのコードを表示します。 – klutt
申し訳ありませんが、私は自分の投稿を正しく編集しました。 –