【问题标题】:Incomplete Laravel migration [duplicate]Laravel迁移不完整[重复]
【发布时间】:2019-05-16 19:26:55
【问题描述】:

当我运行 laravel 命令 'php artisan migrate' 时,我的数据库迁移不完整。

在我的迁移文件中,仅迁移了 3 个表中的一个。

请参阅下面的错误:

C:\wamp64\www\blog>php artisan migrate
Migration table created successfully.
Migrating: 2014_10_12_000000_create_users_table

Illuminate\Database\QueryException  : SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 1000 bytes (SQL: alter table `users` add unique `users_email_unique`(`email`))

at C:\wamp64\www\blog\vendor\laravel\framework\src\Illuminate\Database\Connection.php:664
    660|         // If an exception occurs when attempting to run a query, we'll format the error
    661|         // message to include the bindings with SQL, which will make this exception a
    662|         // lot more helpful to the developer instead of just the database's errors.
        663|         catch (Exception $e) {
      > 664|             throw new QueryException(
        665|                 $query, $this->prepareBindings($bindings), $e
        666|             );
        667|         }
        668|

  Exception trace:

1   PDOException::("SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 1000 bytes")
C:\wamp64\www\blog\vendor\laravel\framework\src\Illuminate\Database\Connection.php:458

  2   PDOStatement::execute()
      C:\wamp64\www\blog\vendor\laravel\framework\src\Illuminate\Database\Connection.php:458
Please use the argument -v to see more details.

请问可能是什么问题?

【问题讨论】:

    标签: php mysql laravel


    【解决方案1】:

    只需在 boot 方法 app\Providers\AppServiceProvider

    中添加这一行
     public function boot()
        {
            Schema::defaultStringLength(191);
        }
    

    【讨论】:

      猜你喜欢
      • 2016-04-18
      • 2015-06-03
      • 2016-05-18
      • 2018-10-21
      • 2020-04-18
      • 2018-06-20
      • 2017-12-12
      • 2016-01-03
      • 1970-01-01
      相关资源
      最近更新 更多