我git为Laravel / PHP编写的项目克隆了一个存储库。我能够使大多数事情在本地运行,并且能够创建初始迁移文件夹,但是我被困在种子和表创建点(?)上。我不断收到以下错误:
In Connection.php line 664:
SQLSTATE[42S02]: Base table or view not found: 1146 Table 'lara_dev.users' doesn't exist (SQL: alter table `users` add `avatar` varchar(255
) null default 'users/default.png' after `email`, add `role_id` int null after `id`)
In PDOStatement.php line 144:
SQLSTATE[42S02]: Base table or view not found: 1146 Table 'lara_dev.users' doesn't exist
In PDOStatement.php line 142:
SQLSTATE[42S02]: Base table or view not found: 1146 Table 'lara_dev.users' doesn't exist
* lara_dev是本地数据库的名称。我在git克隆项目后直接在我的MySQL本地客户端中创建了它,它不是由终端中执行的任何命令创建的。
也:
数据库文件夹内部有三个文件夹:工厂,迁移和种子。从我所看到和理解的角度来看,内部文件的配置正确,应该创建数据库而不会出现问题,而不必编辑这些文件。
我没有WAMP服务器,我只是通过命令'php artisan serve'使用php的内置服务器。
到目前为止我尝试过的仍然无效的解决方案:
php artisan cache:clear //清除缓存,但仅此而已。
php artisan migration:fresh --seed //相同的错误,但是还会删除之前存在的任何表。
php artisan migration:refresh --seed //给出“无任何回滚”消息。
php artisan db:seed //相同的错误
我无法在Stack上找到适合我的情况的任何解决方案。任何帮助将不胜感激。
[请注意,我是PHP的新手,但不是编码专家,而且我大部分时间都可以运行,我只是停留在这里。如果我可以提供其他信息,请告诉我。预先感谢!
某些迁移失败,因为它正在尝试alter
用户表,但尚未创建。
请确保以正确的顺序进行迁移,因为它们以字母顺序]执行。
看来,您的迁移顺序存在问题。它正在尝试在创建表之前对其进行更改。
[Daniyal Javani在上面的评论中给了我正确的答案。我将确切的文件https://github.com/laravel/laravel/blob/master/database/migrations/2014_10_12_000000_create_users_table.php添加到了我的迁移文件夹中。它创建了我丢失的用户表,然后运行“ php artisan migration”。
我想我知道您的问题在哪里。在Laravel框架中,我们具有在Laravel/database/migrations
文件夹中定义的迁移。他们有专门的名字。