Laravel5.5执行表迁移命令出现表为空的解决方案
内容导读
收集整理的这篇技术教程文章主要介绍了Laravel5.5执行表迁移命令出现表为空的解决方案,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含5497字,纯文字阅读大概需要8分钟。
内容图文
这篇文章主要介绍了关于Laravel5.5执行表迁移命令出现表为空的解决方案,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下今天在使用一个第三方包 laravel-admin 时,出现了这样的错误:SQLSTATE[42000]: Syntax error or access violation: 1103 Incorrect table name ''
,折腾了好久,终于知道了解决方法,原来是配置文件的缓存没有清理。
一、问题
vagrant@homestead:~/Code/laravel-shop$ php artisan admin:install
错误提示:
In Connection.php line 664: SQLSTATE[42000]: Syntax error or access violation: 1103 Incorrect table name '' (SQL: create table `` (`id` int uns igned not null auto_increment primary key, `username` varchar(190) not null, `password` varchar(60) not null, `name ` varchar(255) not null, `avatar` varchar(255) null, `remember_token` varchar(100) null, `created_at` timestamp nul l, `updated_at` timestamp null) default character set utf8mb4 collate utf8mb4_unicode_ci)In Connection.php line 452: SQLSTATE[42000]: Syntax error or access violation: 1103 Incorrect table name ''
二、解决方案
database/migrations/2016_01_04_173148_create_admin_table.php
<?phpuse IlluminateDatabaseMigrationsMigration;use IlluminateDatabaseSchemaBlueprint;class CreateAdminTable extends Migration{ /** * Run the migrations. * * @return void */ public function up() { $connection = config('admin.database.connection') ?: config('database.default'); // dd(app('config')); Schema::connection($connection)->create(config('admin.database.users_table'), function (Blueprint $table) { $table->increments('id'); $table->string('username', 190)->unique(); $table->string('password', 60); $table->string('name'); $table->string('avatar')->nullable(); $table->string('remember_token', 100)->nullable(); $table->timestamps(); }); Schema::connection($connection)->create(config('admin.database.roles_table'), function (Blueprint $table) { $table->increments('id'); $table->string('name', 50)->unique(); $table->string('slug', 50); $table->timestamps(); }); Schema::connection($connection)->create(config('admin.database.permissions_table'), function (Blueprint $table) { $table->increments('id'); $table->string('name', 50)->unique(); $table->string('slug', 50); $table->string('http_method')->nullable(); $table->text('http_path')->nullable(); $table->timestamps(); }); Schema::connection($connection)->create(config('admin.database.menu_table'), function (Blueprint $table) { $table->increments('id'); $table->integer('parent_id')->default(0); $table->integer('order')->default(0); $table->string('title', 50); $table->string('icon', 50); $table->string('uri', 50)->nullable(); $table->timestamps(); }); Schema::connection($connection)->create(config('admin.database.role_users_table'), function (Blueprint $table) { $table->integer('role_id'); $table->integer('user_id'); $table->index(['role_id', 'user_id']); $table->timestamps(); }); Schema::connection($connection)->create(config('admin.database.role_permissions_table'), function (Blueprint $table) { $table->integer('role_id'); $table->integer('permission_id'); $table->index(['role_id', 'permission_id']); $table->timestamps(); }); Schema::connection($connection)->create(config('admin.database.user_permissions_table'), function (Blueprint $table) { $table->integer('user_id'); $table->integer('permission_id'); $table->index(['user_id', 'permission_id']); $table->timestamps(); }); Schema::connection($connection)->create(config('admin.database.role_menu_table'), function (Blueprint $table) { $table->integer('role_id'); $table->integer('menu_id'); $table->index(['role_id', 'menu_id']); $table->timestamps(); }); Schema::connection($connection)->create(config('admin.database.operation_log_table'), function (Blueprint $table) { $table->increments('id'); $table->integer('user_id'); $table->string('path'); $table->string('method', 10); $table->string('ip', 15); $table->text('input'); $table->index('user_id'); $table->timestamps(); }); } /** * Reverse the migrations. * * @return void */ public function down() { $connection = config('admin.database.connection') ?: config('database.default'); Schema::connection($connection)->dropIfExists(config('admin.database.users_table')); Schema::connection($connection)->dropIfExists(config('admin.database.roles_table')); Schema::connection($connection)->dropIfExists(config('admin.database.permissions_table')); Schema::connection($connection)->dropIfExists(config('admin.database.menu_table')); Schema::connection($connection)->dropIfExists(config('admin.database.user_permissions_table')); Schema::connection($connection)->dropIfExists(config('admin.database.role_users_table')); Schema::connection($connection)->dropIfExists(config('admin.database.role_permissions_table')); Schema::connection($connection)->dropIfExists(config('admin.database.role_menu_table')); Schema::connection($connection)->dropIfExists(config('admin.database.operation_log_table')); }}
清除配置文件缓存
vagrant@homestead:~/Code/laravel-shop$ php artisan config:cache
再次执行发布命令,就可以了:
vagrant@homestead:~/Code/laravel-shop$ php artisan admin:installMigrating: 2016_01_04_173148_create_admin_tableMigrated: 2016_01_04_173148_create_admin_tableAdmin directory was created: /app/AdminHomeController file was created: /app/Admin/Controllers/HomeController.phpExampleController file was created: /app/Admin/Controllers/ExampleController.phpBootstrap file was created: /app/Admin/bootstrap.phpRoutes file was created: /app/Admin/routes.phpvagrant@homestead:~/Code/laravel-shop$
以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!
相关推荐:
laravel+Redis简单实现队列通过压力测试的高并发处理
对于nginx配置文件中的fastcgi_param的配置错误的解决
以上就是Laravel5.5执行表迁移命令出现表为空的解决方案的详细内容,更多请关注Gxl网其它相关文章!
内容总结
以上是为您收集整理的Laravel5.5执行表迁移命令出现表为空的解决方案全部内容,希望文章能够帮你解决Laravel5.5执行表迁移命令出现表为空的解决方案所遇到的程序开发问题。 如果觉得技术教程内容还不错,欢迎将网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。