解決在laravel中auth建立時(shí)候遇到的問題
當(dāng)你使用auth做用戶登錄注冊的時(shí)候,會很方便,但是你在做數(shù)據(jù)庫遷移的時(shí)候可能會遇到一個問題
$ php artisan migrate Migration table created successfully. [Illuminate\Database\QueryException] SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was t oo long; max key length is 767 bytes (SQL: alter table `users` add unique ` users_email_unique`(`email`)) [PDOException] SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was t oo long; max key length is 767 bytes
不要慌,這里說的是你的數(shù)據(jù)庫遷移完成了,蛋疼的是這里有一個報(bào)錯,會使你在接下來項(xiàng)目中后面的遷移操作繼續(xù)報(bào)錯。
[Illuminate\Database\QueryException] SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'users' alre ady exists (SQL: create table `users` (`id` int unsigned not null auto_incr ement primary key, `name` varchar(191) not null, `email` varchar(191) not n ull, `password` varchar(191) not null, `remember_token` varchar(100) null, `created_at` timestamp null, `updated_at` timestamp null) default character set utf8mb4 collate utf8mb4_unicode_ci) [PDOException] SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'users' alre ady exists
解決方案如下:
索引長度 & MySQL / MariaDB#
Laravel 默認(rèn)使用 utf8mb4 字符,包括支持在數(shù)據(jù)庫存儲「表情」。如果你正在運(yùn)行的 MySQL release 版本低于5.7.7 或 MariaDB release 版本低于10.2.2 ,為了MySQL為它們創(chuàng)建索引,你可能需要手動配置遷移生成的默認(rèn)字符串長度,你可以通過調(diào)用
項(xiàng)目/app/Providers/AppServiceProvider.php 中的 Schema::defaultStringLength 方法來配置它:
use Illuminate\Support\Facades\Schema;
/**
* 引導(dǎo)任何應(yīng)用程序服務(wù)。
*
* @return void
*/
public function boot()
{
Schema::defaultStringLength(191);
}
或者你可以為數(shù)據(jù)庫開啟 innodb_large_prefix 選項(xiàng),有關(guān)如何正確開啟此選項(xiàng)的說明請查閱數(shù)據(jù)庫文檔。
以上這篇解決在laravel中auth建立時(shí)候遇到的問題就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
YII2框架中操作數(shù)據(jù)庫的方式實(shí)例分析
這篇文章主要介紹了YII2框架中操作數(shù)據(jù)庫的方式,結(jié)合實(shí)例形式總結(jié)分析了YII2使用createCommand方式及AR(Active Record)方式操作數(shù)據(jù)庫相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2020-03-03
laravel異步監(jiān)控定時(shí)調(diào)度器實(shí)例詳解
這篇文章主要給大家介紹了關(guān)于laravel異步監(jiān)控定時(shí)調(diào)度器的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用laravel具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-06-06
淺談使用 PHP 進(jìn)行手機(jī) APP 開發(fā)(API 接口開發(fā))
做過 API 的人應(yīng)該了解,其實(shí)開發(fā) API 比開發(fā) WEB 更簡潔,但可能邏輯更復(fù)雜,因?yàn)?API 其實(shí)就是數(shù)據(jù)輸出,不用呈現(xiàn)頁面,所以也就不存在 MVC(API 只有 M 和 C),那么我們來探討下,如何使用php進(jìn)行手機(jī)API接口開發(fā)2014-08-08
tp5(thinkPHP5)框架連接數(shù)據(jù)庫的方法示例
這篇文章主要介紹了tp5(thinkPHP5)框架連接數(shù)據(jù)庫的方法,結(jié)合實(shí)例形式較為詳細(xì)的分析了基于thinkPHP5框架連接數(shù)據(jù)庫的相關(guān)配置、數(shù)據(jù)讀取、模板渲染等操作技巧,需要的朋友可以參考下2018-12-12
PHP將頁面中點(diǎn)擊數(shù)量高的鏈接進(jìn)行高亮顯示的方法
這里來介紹PHP將頁面中點(diǎn)擊數(shù)量高的鏈接進(jìn)行高亮顯示的方法,主要受到WordPress中某插件的啟發(fā),需要的朋友可以參考下2016-05-05
php+ajax實(shí)現(xiàn)無刷新文件上傳功能(ajaxuploadfile)
這篇文章主要為大家詳細(xì)介紹了php結(jié)合ajaxuploadfile實(shí)現(xiàn)無刷新文件上傳功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-02-02
YII CLinkPager分頁類擴(kuò)展增加顯示共多少頁
yii的分頁類CLinkPager默認(rèn)是不支持顯示共x頁的,那么現(xiàn)在接的項(xiàng)目有這樣的需求,怎么辦呢?下面通過本文給大家介紹YII CLinkPager分頁類擴(kuò)展增加顯示共多少頁的實(shí)例代碼,需要的朋友參考下吧2016-01-01
Codeigniter中mkdir創(chuàng)建目錄遇到權(quán)限問題和解決方法
這篇文章主要介紹了Codeigniter中mkdir創(chuàng)建目錄遇到權(quán)限問題和解決方法,需要的朋友可以參考下2014-07-07

