作者:孙孟兰_580 | 来源:互联网 | 2023-02-07 21:01
我在文件database
夹中创建了我的database.sqlite文件.我的.env
文件内容是:
DB_COnNECTION=sqlite
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=absolute\path\to\database\database.sqlite
DB_USERNAME=admin
DB_PASSWORD=
当我运行时php artisan tinker
,DB::table('users')->get();
我从数据库中获取信息.
我的DatabaseController是:
class DatabaseController extends Controller
{
public function main()
{
$users = DB::table('users')->get();
return view('database',compact($users));
}
}
然而,当我请求/database
路径时,我收到错误:
QueryException in Connection.php line 647:
Database (database/database.sqlite) does not exist. (SQL: select * from "users")
更新:临时修复是从config
文件夹更改database.php :
'connections' => [
'sqlite' => [
'driver' => 'sqlite',
'database' => 'absolute\path\database\database.sqlite',
'prefix' => '',
],
而不是使用env('DB_DATABASE', database_path('database.sqlite'))
,而database/database.sqlite
不是我的绝对路径.
1> Alexey Mezen..:
您需要使用完整路径,例如:
DB_DATABASE=/home/laravel-project/database/database.sqlite
2> gdfgdfg..:
如果您DB_DATABASE=...
从.env
文件中删除并使用以下路径config/database.php
:
'database' => env('DB_DATABASE', database_path('database.sqlite')),...
(如果您的database.sqlite
文件位于database/
文件夹中),它也将起作用。
3> Alexandru An..:
我运行了以下命令:
php artisan config:cache
php artisan config:clear
php artisan serve
-重新启动服务器