【Laravel】『Database does not exist.』오류 원인 및 처리 방법
값을 구할 때 서피스 법선의 원래 방향을 사용합니다.
오류 메시지는 "데이터베이스 does not exist.(SQL: PRAGMA foreign.ukeys=ON;)"입니다.의 표현.
.env
평론 파일DB_DATABASE=database.sqlite
을 통해 해결된 이 글은 상세한 원인과 처리 방법을 소개할 것이다.오류 메시지의 의미
『Database does not exist.(SQL:PRAGMA foreign_keys = ON;)』
이 메시지의 의미는 "데이터베이스가 존재하지 않습니다"입니다.태그 요소의 표시 속성을 수정합니다.
책에 오류가 있는 것 같습니다. 실제로 데이터베이스 파일
database.sqlite
의 경로를 지정해야 하는데 DB_DATABASE=database.sqLite
을 입력했기 때문에 데이터베이스가 존재하지 않는 오류가 발생한 것 같습니다.진일보한 문제와 대처 방법
오류가 발생했습니다. 절대 경로로 파일 경로를 작성할 때
The environment file is invalid!
오류가 발생했습니다.자세한 내용은
Failed to parse dotenv file due to unexpected whitespace.
(의외의 공백으로 인해dotenv 파일 분석이 실패했습니다.)이런 일.아마도 파일 경로에 일본어가 포함되어 있어서 순조롭게 진행되지 못했을 것이다.
상대적인 경로에 대한 표기도 순조롭지 않아 대처 방법을 찾을 때
.env
파일의 DB_DATABASE=〜
평론 출력을 통해 순조롭게 진행될 수 있다..비복
# 前略
DB_DATABASE=〜
# 後略
.판매 후# 前略
# DB_DATABASE=〜
# 後略
[참조] PHP 프레임워크 Laravel 시작실제로 고쳐서 서버를 다시 시작할 때 열심히 일했어요.
대처법 설명
그렇다면 왜 댓글
DB_DATABASE=〜
을 통해 열심히 일합니까?Laravel에서 데이터베이스를 지정할 때
config/database.php
설정을 읽습니다.이
database.php
에서 데이터베이스 지정에는 다음과 같은 코드가 적혀 있습니다.database.php
# 前略
'database' => env('DB_DATABASE', database_path('database.sqlite')),
# 後略
우선 env()
부터 봅시다.전역 보조 함수 env()
여기에서 사용하는
env()
은 Laravel에서 제공하는 전역 보조 함수 중 하나로 환경 변수의 값을 가져오는 데 사용됩니다.읽어들일 수 없으면 기본값을 반환합니다.
$env = env('APP_ENV');
// APP_ENVがセットされていない場合、第二引数がデフォルト値('production')として返る
$env = env('APP_ENV', 'production');
database.php
에 기록된 env('DB_DATABASE', database_path('database.sqlite'))
은 "환경 변수 DB_DATABASE
에 저장된 값을 가져옵니다! 없으면 database_path ('database.sqlite') 의 값을 사용합니다!"그런 거지?[참조] laravel에서 데이터베이스.sqlite가 존재하지 않음으로 표시
그렇다면 주석
DB_DATABASE
을 통해 얻은 두 번째 매개 변수database_path('database.sqlite')
는 어떤 함수입니까?전역 보조 함수 database_path()
database_path()
도 전역 보조 함수 중의 하나다.database/
디렉토리의 전체 경로를 반환합니다.database/
디렉토리에 지정된 파일의 전체 경로를 생성할 수도 있습니다.$path = database_path();
// databaseディレクトリ内のfactories/UserFactory.phpへの完全パスを生成
$path = database_path('factories/UserFactory.php');
env('DB_DATABASE', database_path('database.sqlite'))
에 사용된 database_path('database.sqlite')
은 "취득database/
디렉터리의 database.sqlite
전체 경로입니다!"그런 거지?[참조] 보조 프로그램 5.5 레벨(env)
하면, 만약, 만약...
각자의 함수로 만든 것을 알았기 때문에
database.php
에 썼다database.php
# 前略
'database' => env('DB_DATABASE', database_path('database.sqlite')),
# 後略
뭐 공부 해요?"환경 변수
DB_DATABASE
에 저장된 값을 가져옵니다! 그렇지 않으면 database/
디렉터리 database.sqlite
의 전체 경로를 가져옵니다!"그렇습니다.
처리 방법으로 진행된 "
.env
파일의 DB_DATABASE=database.sqlite
주석 출력"은 database_path()
에서 얻은 전체 경로를 데이터베이스로 지정하는 것을 말합니다!기타 처리 방법
그렇다면'댓글
.env
파일의 DB_DATABASE=database.sqlite
'외에도 대처법이 보인다!.env
파일에 주석이 없는 DB_DATABASE=database.sqlite
database.php# 前略
'database' => env('DB_DATABASE', database_path('database.sqlite')),
# 後略
열다database.php
# 前略
'database' => database_path('database.sqlite'),
# 後略
에서 기술한 장면은 다음과 같은 절차를 이용하여 명세표를 작성하여 개념 디자인에서 체량의 부피를 분석하도록 한다.총결산
Laravel에서 "데이터베이스가 존재하지 않습니다."의 오류가 발생했을 때 데이터베이스 경로 지정이 잘못되었을 수 있습니다
database.sqlite
주석 파일.env
# 前略
# DB_DATABASE=〜
# 後略
혹은DB_DATABASE=database.sqlite
의 전체 경로를 지정합니다# 前略
'database' => database_path('database.sqlite'),
# 後略
사용자 정의 외관을 정의합니다!참조 요약
Reference
이 문제에 관하여(【Laravel】『Database does not exist.』오류 원인 및 처리 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/Soh1121/items/aad110b36b0a2f0f6648텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)