Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/293.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git克隆的Laravel项目在php artisan migrate和php artisan db:seed失败_Php_Mysql_Laravel_Laravel Artisan_Artisan Migrate - Fatal编程技术网

Git克隆的Laravel项目在php artisan migrate和php artisan db:seed失败

Git克隆的Laravel项目在php artisan migrate和php artisan db:seed失败,php,mysql,laravel,laravel-artisan,artisan-migrate,Php,Mysql,Laravel,Laravel Artisan,Artisan Migrate,我为一个用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` var

我为一个用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服务器,我只是通过命令“phpArtisanServe”使用php的内置服务器

到目前为止,我尝试过的解决方案都不起作用:

  • php artisan cache:clear//清除缓存,仅此而已

  • php artisan migrate:fresh--seed//同样的错误,但也会删除以前存在的任何表

  • php artisan migrate:refresh--seed//给出“无需回滚”消息

  • php artisan db:seed//相同错误

  • 我还没能在堆栈上找到任何适合我情况的解决方案。任何帮助都将不胜感激


    请考虑到我对PHP比较陌生,但对编码不太熟悉,而且大部分时间我都能运行,我只是被困在这里。如果我能提供更多信息,请让我知道。提前谢谢

    某些迁移失败,因为它试图
    更改尚未创建的用户表


    确保迁移的顺序正确,因为它们是按字母顺序执行的。

    某些迁移失败,因为它试图更改尚未创建的用户表


    确保迁移的顺序正确,因为它们是按字母顺序执行的。

    看起来,您的迁移顺序有问题。它试图在创建表之前更改它

    Laravel迁移将包含一个时间戳,该时间戳允许框架确定迁移的顺序


    能否将alter users表迁移文件名更改为
    2020\u 04\u 24\u 062125\u alter users\u table.php
    ,然后重试?

    看起来,迁移顺序有问题。它试图在创建表之前更改它

    Laravel迁移将包含一个时间戳,该时间戳允许框架确定迁移的顺序


    能否将alter users表迁移文件名更改为
    2020\u 04\u 24\u 062125\u alter\u users\u table.php
    ,然后重试?

    Daniyal Javani在上面的评论中给了我正确的答案。我把这个文件添加到了我的迁移文件夹中。它创建了我丢失的users表,然后运行“php artisan migrate”成功了。

    Daniyal Javani在上面的评论中给了我正确的答案。我把这个文件添加到了我的迁移文件夹中。它创建了我丢失的用户表,然后运行“php artisan migrate”运行正常。

    我想我理解您的问题所在。在Laravel框架中,我们在
    Laravel/database/migrations
    文件夹中定义了迁移。他们有特定的名字

    它们的名字取决于它们的创作日期,并以同样的方式排列和执行

    例如:

    2014\u 10\u 12\u 000000\u创建用户\u table.php

    2014_10_12_00001_alter_users_table.php

    create\u users\u table.php
    首先运行,然后
    alter\u users\u table.php
    运行

    你的问题:

    迁移中有一部分代码需要在users表中更改,但尚未创建users表。所以你有两种方法:

    1-更改
    (date\u timestamp)\u create\u users\u table.php的名称,使创建日期在更改迁移日期之前

    2-更改迁移的名称,该名称包含更改用户表的代码部分,其方式是在创建用户表的日期之后更改日期


    在最后运行php-artisan-migrate:fresh时,我想我理解了您的问题所在。在Laravel框架中,我们在
    Laravel/database/migrations
    文件夹中定义了迁移。他们有特定的名字

    它们的名字取决于它们的创作日期,并以同样的方式排列和执行

    例如:

    2014\u 10\u 12\u 000000\u创建用户\u table.php

    2014_10_12_00001_alter_users_table.php

    create\u users\u table.php
    首先运行,然后
    alter\u users\u table.php
    运行

    你的问题:

    迁移中有一部分代码需要在users表中更改,但尚未创建users表。所以你有两种方法:

    1-更改
    (date\u timestamp)\u create\u users\u table.php的名称,使创建日期在更改迁移日期之前

    2-更改迁移的名称,该名称包含更改用户表的代码部分,其方式是在创建用户表的日期之后更改日期


    最后运行
    php-artisan-migrate:fresh

    是否运行了
    php-artisan-migrate
    命令?是的,我运行了。它给了我上面的错误。因此,在迁移中使用的表不是以前的迁移创建的。请尝试通过将以下文件下载到迁移文件夹来创建用户表。是否运行了
    php artisan migrate
    命令?是的,我运行了。它给了我上面的错误。所以在迁移中使用的表不是由previ创建的