0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【Rails】rails db が見づらいのでクライアントツールを使おう

Last updated at Posted at 2021-03-19

環境

MacOS
Rails 6.1.3
SQLite version 3.28.0

Problem

railsを使っていてDBの中身を見たくなったり、SQLを流したいことは多々あります。
そんなとき使うのが「rails db(console)」コマンドですね。でもこれ、とっても見づらくありませんか?

sqlite> SELECT * FROM relationships LIMIT 1;
1|3|1|2021-03-04 08:19:13.390480|2021-03-04 08:19:13.390480

改行文字が含まれていればそのまま改行されて見えますし、ヘッダもありません。
SQLiteに慣れていないのもありますが、やはりこれでは可読性が高いとは言えません。
なんとかSQLiteのオプションで見やすくならないかと試行錯誤してみました。

Try

-- ヘッダを表示
sqlite> .headers ON
sqlite> SELECT * FROM relationships LIMIT 1;
id|user_id|follower_id|created_at|updated_at
1|3|1|2021-03-04 08:19:13.390480|2021-03-04 08:19:13.390480

-- カラム毎に左揃えで表示
sqlite> .mode column
sqlite> SELECT * FROM relationships LIMIT 1;
id          user_id     follower_id  created_at                  updated_at
----------  ----------  -----------  --------------------------  --------------------------
1           3           1            2021-03-04 08:19:13.390480  2021-03-04 08:19:13.390480

-- カラム毎に改行して表示
sqlite> .mode line
sqlite> SELECT * FROM relationships LIMIT 1;
         id = 1
    user_id = 3
follower_id = 1
 created_at = 2021-03-04 08:19:13.390480
 updated_at = 2021-03-04 08:19:13.390480

だいぶ見やすくなりましたが、大量にデータを取得したいときや、カラムの数が多い場合上記の方法でもツライところがあります。

Solve

データベースを可視化するクライアントツールを使いました。
https://tableplus.com
1.png

設定は至って簡単です。
画面左下の「Create a new connection...」をクリックして「SQLite」を選択します。
3.png

「Select file...」をクリックするとFinderが開くのでお使いのrailsプロジェクトに移動し、「db/development.sqlite3」を選択します。あとは「Connect」を押下で完了です。
2.png

登録・更新・検索すべてがGUIで操作可能になりました。
とっても見やすいUIですね!もちろん生のSQLも流せるので便利です。ハイライトが地味に嬉しいポイント。

Summary

筆者の語彙力が乏しく「rails db 見づらい」「rails db 見やすく」とか検索してもヒットしなかったので記事を書いてみました。
余談ですが正式には「rails dbconsole」というのですね。短縮形で覚えると検索が大変ですね。
どなたかの助けになれば幸いです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?