SQLite3コマンドを打つとエラーになる
(venv) PS C:\PythonProjects\006Django_practice01\quick_django> sqlite3 db.sqlite3 sqlite3 : 用語 'sqlite3' は、コマンドレット、関数、スクリプト ファイル、または操作可能なプログラムの名前として認識されま せん。名前が正しく記述されていることを確認し、パスが含まれている場合はそのパスが正しいことを確認してから、再試行してくだ さい。 発生場所 行:1 文字:1 + sqlite3 db.sqlite3 + ~~~~~~~ + CategoryInfo : ObjectNotFound: (sqlite3:String) [], CommandNotFoundException + FullyQualifiedErrorId : CommandNotFoundException
環境
OS:Windows10
エディタ:VSCode 1.72.2
Pythonバージョン:3.8.3
Django:3.0.6
DjangoはデフォルトでSQLiteが利用できるという触れ込みだったのにおかしい…。
解決策:Windows側にSQLiteをインストール
なんてことはない、Windows側にSQLiteが入ってなかった。
コマンドプロンプトからSQLiteコマンドを打つにはWindows側にSQLiteをインストールして、環境変数を設定する必要がある。
開発環境でSQLiteが利用できるようになっていてもWindows側にも設定が必要だった。
書籍でDjangoの学習をしているが、特にインストールしろと言われてなかったのでやってなかった。
SQLiteインストール手順
まずはSQLite公式ページにアクセス。
Windows版をダウンロードしたいので「Precompiled Binaries for Windows」にある「sqlite-tools-win32-x86-3360000.zip」をダウンロード。
次にzipファイルを解凍。
この三つのファイルを自分の好きな場所に保存すれば完了。
自分は単純にCドライブ直下に入れています。
次に環境変数を設定。
Windowsのスタートメニュー → 設定 → 「システムの詳細設定」
環境変数をクリック
環境変数の「path」に先ほど作成したフォルダのパスを設定
ユーザ環境変数はユーザごと、システム環境変数はそのPCユーザ全体に影響が及ぶ。
自分の都合に合わせて設定してください。
教訓
エラーメッセージが「CommandNotFoundException」なんだから、まず環境変数周りや実行ファイルの有無を疑うようにする。
結果だけまとめるとこんな単純なことでもエラー原因がわかるまで時間がかかる。
開発環境の方にSQLiteをpipインストールしたりと無駄なことをしてしまった。
コメント