Laravel报错SQLSTATE[42S02]:表eshop.sessions不存在,多种尝试未解决
解决Laravel中
sessions表不存在的问题 报错信息
SQLSTATE[42S02]: 找不到基表或视图:1146 表 'eshop.sessions' 不存在
SELECT * FROMsessionsWHEREid= N7H5CpGFStKcjjHhlq9aOo05OE0eU2I9muBXC4Tc limit 1
问题详情
- 检查数据库确认从未创建过名为
sessions的表; - 删除Migrations、Seeders、Factories文件夹后重新操作,问题依旧;
- 执行以下命令均无效果:
php artisan config:cachephp artisan config:clearcomposer dump-autoload -ophp artisan migrate:fresh --seedphp artisan migrate
解决方案
1. 生成会话表迁移文件
Laravel自带会话表迁移生成命令,执行以下命令重新创建迁移文件:
php artisan session:table
执行后会在database/migrations目录下生成创建sessions表的迁移文件。
2. 执行迁移创建表
运行迁移命令完成sessions表的创建:
php artisan migrate
3. 检查会话驱动配置
打开项目根目录的.env文件,确认会话驱动设置匹配实际需求:
# 使用数据库驱动时,确保配置正确 SESSION_DRIVER=database # 若无需数据库驱动,可改为file/cookie等其他驱动
4. 重置缓存确保配置生效
执行以下命令清除缓存,避免旧配置干扰:
php artisan config:clear php artisan cache:clear
内容的提问来源于stack exchange,提问作者user23719376
相关产品推荐
相关产品推荐

