【Laravel】データベースを用意する【SQLite】

対象 Laravelでデータベースを用意する必要がある人

書いている人 プログラミング歴2年くらい

前提 Laravelプロジェクトをローカルに用意している

環境 PC:M1 mac Laravel: Version 9.0.1 

Laravelをローカルにインストールしたはいいが、DBを用意していない!
そんな時にサクッと用意できるのがSQLiteデータベースだ。今回はその使い方を見ていく。

SQLiteはMySQL等と同じく、リレーショナルデータベースの一つで扱うのが非常に簡単らしい。元々MacにもSQLite自体が入っているみたい。

また、GUIとしてTablePlusも扱うので落としていない人は落としておこう。

TablePlus:https://tableplus.com/

SQLiteホームページ :https://www.sqlite.org/index.html

今回DBは予め用意する必要はないので、LaravelプロジェクトはComposer経由で作成しておこう。

まだ作成していない人はこちらを参考に。

Laravel v9.7が最新かな?
目次

database.sqliteファイルを作成する

Laravelプロジェクトを作成したら、Laravelのdatabaseフォルダの中にdatabase.sqliteというファイルを作成しよう。SQLiteは、ファイル形式のDBでこのファイルにDBの情報が書き込まれるようだ。

Laravelプロジェクトの中にある、databaseフォルダを見つけよう。
その中に「database.sqlite」というファイルを作成しよう。

SQLiteを使うにはほぼこれで準備完了だ。

.envファイルを書き換える

database.sqliteファイルを用意したら、.envファイルを書き換えていこう。

Laravelはデフォルトではmysqlと接続するようになっているので、その部分をsqliteに変換していくぞ。

デフォルトではmysqlが選択されている。

DB_CONNECTIONのmysqlになっている部分をsqliteにして、残りをコメントアウト、もしくは削除しておこう。

mysqlからsqliteに変更

php artisan migrateコマンドを走らせる

書き換えたら、php artisan migrateをターミナルで走らせよう。このコマンドはDBにテーブルを作成するコマンドだ。

テーブルの構造はdatabase/migrationsフォルダ以下に定義していく。Laravelプロジェクトを作成したら自動的にいくつかのmigrationsファイルが作成されているはずだ。

このコマンドをよく確認のために走らせているのは、コマンドを走らせて成功する=DBにテーブルが作成されることだからだ。

さっそく走らせよう。注意点としては、Laravelプロジェクトフォルダでしっかりコマンドを叩くことだ。artisanファイルの置き場が、Laravelプロジェクト内なので、そこで叩かないと動かないぞ。

今いる場所を確認してコマンドを叩こう。

コマンドを叩くと、successfullyと返ってくるはずだ。

Migrationに成功!

DBにテーブルが作成されたのはいいけど、どうやってDBを確認すればよいのだろうか?

database.sqliteファイルを確認したら?と思うかもしれないが、残念ながらこのファイルは開くことができない。


※もしかしたら無理矢理開けるのかもしれないけど、知識ないのですいません。

このファイルは開けないらしい。

そこで次で紹介するTablePlusの登場だ。

TablePlusでdatabase.sqliteを読み込む

migrationに成功したが、どうやってDBを確認すればよいのだろうか?

大きくわけて2つ方法がある。1つはコマンドラインで確認する方法。こちらはCUIと呼ばれて、コマンド操作が必須なので初心者には少し敷居が高い。

もう1つは、今回紹介するTablePlusなどのGUIを用いて確認する方法だ。こちらは見た目もわかりやすいし扱いやすいのが特徴だ。さっそく扱っていこう。DLしていない人は落としておこう。無料プランで大丈夫だ。

TablePlus:https://tableplus.com/

DLして、TablePlusを立ち上げたら以下の画面が表示されるはずだ。

設定で色を黒に設定している

わかりにくいけど、下にCreate a new connection...と書かれているのでそれをクリックしよう。

わかりにくい…

すると、どのソフトを使うかを聞かれるのでSQLiteを選択しよう。

SQLiteを選択。

するとまた、ポップアップが表示されるので、名前とパスを選択してConnectボタンをクリックしよう。パスはdatabase.sqliteがある場所を選択しよう。それ以外は特に記入しなくて大丈夫だ。

必要事項を埋める。
名前は適当で大丈夫だ。

connectを押すと、しっかりとmigrationsされたファイルが表示されるはずだ。

テーブルが確認できた。
もちろんデータはまだ入っていないぞ。

これでデータを確認しながら作業できるようになった。

まとめ

  • Laravelプロジェクトを作成し、databaseフォルダ内にdatabase.sqliteファイルを作成する。
  • .envファイルを修正し、php artisan migrateコマンドを走らせる。
  • TablePlusをDLすれば、GUIでデータ構造を確認できる。

ざっとこんな感じでまとめた。TablePlusはSQLiteだけでなく、様々なデータベースに対応しているのが嬉しい。
SQLiteはMySQLより設定が面倒ではないので手軽にデータベースを用意したい人やLaravelの練習をしたい人にはいいのではないだろうか?

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次