ホームページ >バックエンド開発 >PHPチュートリアル >Laravel 移行エラー「一意のキーが長すぎます」を修正する方法

Laravel 移行エラー「一意のキーが長すぎます」を修正する方法

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-01 04:48:02963ブラウズ

How to Fix

Laravel 移行エラー:「指定した場合でも一意のキーが長すぎます」

列の一意のキーを作成するときに Laravel 移行エラーが発生する可能性があります許可された最大長を超えています。指定されたシナリオでは、ユーザーは、長さが 320 文字の電子メール列を持つユーザー テーブルを移行しようとしたときに、この問題に遭遇しました。

エラー メッセージは、指定されたキー (電子メール) が長すぎることを示しています。 、最大キー長は 767 バイトです。この問題を解決するには、電子メール列の長さを減らすことが推奨されます。

Laravel の文字列列のデフォルトの長さは 250 文字です。電子メール列をこの長さに設定すると、一意のキーの長さのエラーが発生することなく移行が成功するはずです。あるいは、アプリケーションの特定の要件に基づいて、電子メール列をより短い長さに設定することもできます。

Laravel 5.4 以降の場合は、追加のソリューションが利用可能です。 AppServiceProvider.php ファイルを編集し、ブート メソッドでデフォルトの文字列長を設定することにより、すべての文字列列の最大長を調整できます。

Builder::defaultStringLength を 191 などの小さい値に設定することにより、エラーが解決され、移行が正常に続行できるようになります。

以上がLaravel 移行エラー「一意のキーが長すぎます」を修正する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。