Maison > base de données > tutoriel mysql > Comment résoudre l'erreur « La table de base ou la vue existe déjà » dans Laravel 5.5 ?

Comment résoudre l'erreur « La table de base ou la vue existe déjà » dans Laravel 5.5 ?

Susan Sarandon
Libérer: 2024-10-23 21:21:30
original
378 Les gens l'ont consulté

How to Resolve

Solution à l'erreur "La table ou la vue de base existe déjà" dans Laravel 5.5

Description du problème :

Lors de l'exécution de php artisan migrate dans Laravel 5.5, l'erreur suivante se produit :

[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)
Copier après la connexion

Bien que la table "users" soit mentionnée dans le message d'erreur, le problème réel est que la table existe déjà, mais on essaie de le créer à nouveau.

Solution :

Le problème se produit avec les autorisations des utilisateurs MySQL. Cette erreur se produit lorsque l'utilisateur MySQL ne dispose pas des autorisations suffisantes pour créer une nouvelle table dans la base de données.

Pour résoudre ce problème, assurez-vous que votre utilisateur MySQL dispose des autorisations nécessaires. Vous pouvez suivre ces étapes :

  1. Connectez-vous à MySQL à l'aide de la commande suivante :
mysql -u username -p
Copier après la connexion
  1. Entrez votre mot de passe et appuyez sur Entrée.
  2. Exécutez la requête suivante pour accorder à l'utilisateur l'autorisation de créer des tables et de supprimer des tables :
GRANT CREATE, DROP ON database_name.* TO username;
Copier après la connexion
  1. Enregistrez les modifications à l'aide de la requête suivante :
FLUSH PRIVILEGES;
Copier après la connexion

Maintenant, la commande php artisan migrate devrait s'exécuter normalement sans l'erreur "La table ou la vue de base existe déjà".

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal