首頁  >  文章  >  資料庫  >  如何解決 Laravel 5.5 中的「基底表或視圖已存在」錯誤?

如何解決 Laravel 5.5 中的「基底表或視圖已存在」錯誤?

Susan Sarandon
Susan Sarandon原創
2024-10-23 21:21:30300瀏覽

How to Resolve

Laravel 5.5 報錯"Base table or view already exists" 的解決方法

問題描述:

問題描述:在Laravel 5.5 中執行php artisan migrate 時,出現以下錯誤:

[Illuminate\Database\QueryException]
SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'users' already exists (SQL: create table users (id int unsigned not null auto_increment primary key, name varchar(255) not null, email varchar(255) not null, password varchar(255) not null, remember_token varchar(100) null, created_at timestamp null, updated_at timestamp null) default character set utf8mb4 collate utf8mb4_unicode_ci engine = InnoDB ROW_FORMAT=DYNAMIC)

雖然錯誤訊息中提到了"users" 表,但實際問題是該表已經存在,卻試圖再次創建。

解決方法:

問題出現在 MySQL 使用者權限。當 MySQL 使用者沒有足夠的權限在資料庫中建立新資料表時,就會出現此錯誤。

要解決此問題,請確保您的 MySQL 使用者擁有必要的權限。可以依照以下步驟登入 MySQL:
mysql -u username -p
輸入您的密碼並回車。
  1. 執行下列查詢以授予使用者建立資料表和刪除資料表的權限:
GRANT CREATE, DROP ON database_name.* TO username;
使用下列查詢儲存變更:
現在,php artisan migrate 指令應該可以正常執行,並且不會出現"Base table or view already exists" 錯誤。
FLUSH PRIVILEGES;

以上是如何解決 Laravel 5.5 中的「基底表或視圖已存在」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn