Herokuにデプロイしたらデータベースはいずこへ?
RailsアプリをHerokuにデプロイした後、やりたいことがありました。
それはデータベースの中身を確認することです。
アプリをローカル環境で作っていた時は、「SQLite」というデータベースの管理システムを使っていましたね。
個人的に、データベースの中身を確認するときはDB Browser for SQLiteにお世話になっていました。
しかしながら、です。
HerokuではSQLiteではなく「PostgreSQL」というデータベース管理システムを利用します。
DB Browser for SQLiteは使えないので困ったもんです。
試しにググってみたところ、こちらの神記事に遭遇。
どうやらHerokuのDataclipsという機能を使うと、データベースの中身を確認できるようです。
データベースDataclipを作成する
Herokuのトップページへログイン。
メニューの中から

Dataclipsを選択。

Dataclipを作る
「New Dataclip」で新しいデータクリップを作成します。

Dataclipのタイトルを記入
Dataclipに名前を付けましょう。

何でも構いませんよ。
データベースを選ぶ
Herokuで作ってきたデータベースを選びましょう。

アプリのIDで探すといいですね。
SQLを書いてデータベースを表示
最後に、SQLを書いてデータベースを表示します。

「えっ、SQL触ったことねーぞ!やべえ」
と思ってググってみたところこちらの神記事を発見。
この記事によると、
SELECT カラム名 FROM テーブル名
でデータベースを表示できるようです。
例えば、「usersテーブル」の「nameカラム」だけ表示させたい場合、
SELECT "name" FROM users
と書きます。
また、複数のカラムを同時に表示させたい場合、カンマで区切って、
SELECT "name", "email" FROM users
と書きます。
すべてのカラムを一斉表示させたい場合、カラム名に「*(アスタリスクマーク)」を書きます。
SELECT * FROM users
困ったらアスタリスクでいいですね。
SQLを書き終わったら「Save&Run」でデータベースを表示。
データベースをダウンロード
データはダウンロードも可能です。
Download / Export
と進んで、

CSV
を選ぶと、csv形式でダウンロードできます。

便利なのが「スプレッドシート活用方法」。
「Google Sheets Integration」の計算式を、スプレッドシートの1セルにぶち込めばDONE。

シート内でデータベースの値を取得できるでしょう。

いやあ、すごいっす。HerokuのDataclip。
ただ、Dataclipを使うためにはSQLのコマンドが必要です。
初心者はアスタリスクを活用すれば、データベースを最低限表示できるでしょう。
SQLが必要となるとは想定してなかったので、SQLをこの際に勉強しようと思った次第です。
それでは!
Lin

おそらく、ブロガー。
今年でフリーランス 6年目。