【问题标题】:Laravel: Base table or view not found: 1146 La Table 'database.migrations'Laravel:未找到基表或视图:1146 La Table 'database.migrations'
【发布时间】:2014-11-19 16:36:59
【问题描述】:

我正在 Laravel 上创建一个应用程序。在某个时间点,我不得不重新安装我的 WAMP 服务器。现在我再次安装它并创建了相同的数据库。当我尝试使用命令php artisan migrate 再次迁移所有内容时,出现以下错误。

[Illuminate\Database\QueryException]
SQLSTATE[42S02]: Base table or view not found: 1146 La table 'learning.migrations' n'exists pas (SQL: create table 'migrations' ('migration' varchar(255) not null, 'batch' int null) default character set utf8 collate utf8_unicode_ci)

[PDOException]
SQLSTATE[42S02]: Base table or view not found:1146 La table 'learning.migrations' n'existe pas

migrate [--bench[="..."]] [--database[="..."]] [--force] [--path["..."]] [--package[="..."]] [--pretend] [--seed]

可能是什么问题?我该如何解决这个问题?

【问题讨论】:

  • 试试这两个命令,看看artisancomposer是否先工作,$ php artisan env$ composer dumpautoload
  • Current application environment: production 第二个:'警告:类解析不明确,“TablePrograms”在两者中都找到了-------'
  • (-----) 表示它正在比较两个迁移文件。我不想输入那么大的部分。
  • 问题是数据库learning中的表migrations没有创建,原因与数据库配置或迁移有关。你可以检查数据库learning是否存在,production的数据库配置是learning
  • 数据库已存在。如何检查生产环境的数据库配置?

标签: laravel laravel-4


【解决方案1】:

你可以试试这个:

在您的 phpMyAdmin 中:创建数据库。

在您的命令控制台中:

1) 在您的 proyect 文件夹中执行:php artisan migrate:install
这将在您的数据库中创建表“迁移”

2) 然后执行:php artisan migrate

【讨论】:

    【解决方案2】:

    问题来自 wamp 重新安装。当我重新安装 wamp 服务器时,在 MySQL 文件夹中,有一个包含数据库名称和所有内容的旧文件(这是因为我在重新安装 WAMP 之前没有删除数据库)。所以你要做的就是去你的 MySQL 安装文件夹,在我的例子中:C:\wamp\bin\mysql\mysql5.6.17\data 并删除旧数据库名称的文件夹。这应该可以解决您的问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-07-21
      • 2021-05-30
      • 1970-01-01
      • 2018-03-16
      • 2017-08-02
      • 2019-01-28
      • 2016-07-15
      • 2023-03-26
      相关资源
      最近更新 更多