🐘

TablePlusからPostgreSQLに接続する

に公開

What TablePlus?

TablePlusとはデーベースにGUIのデスクトップアプリケーションで操作をして接続するクライアントツールです。

https://tableplus.com/

有料のツールですが無料で使うこともできます。私は有料版を契約しております。MacとiOSユーザー限定になりますが、setappというサブスクサービスに登録すると他のサービスと一緒に安く使えます✨

https://setapp.com/

以前別のアカウントで投稿した記事を改良して作ってみたPostgreSQLのdocker-composeを使ってローカルに環境を作成して使ってみようと思います。

手順は、GitHubのREADMEにも記載しております。

https://github.com/sakurakotubaki/postgre-docker-compose

🔗公式の手順や国内の記事のリンクも貼っておきます。
https://docs.tableplus.com/getting-started

https://envader.plus/article/119

Postgreコンテナを構築する

docker-composeを使用して、PostgreSQLの環境構築をする。

ちょっと古いバージョンでもいいかなと思いつつも16.9あたりで今回イメージを使用いたしました。
🔗DockerHubのリンク

https://envader.plus/article/119

  1. .envファイルを作成し、以下の内容で環境変数を設定する
    ※このファイルがないと docker compose up -d 実行時にエラーになります。
touch .env
POSTGRES_VERSION=16.9
CONTAINER_NAME=company_db # お好きに
HOSTNAME=pgsql-db # お好きに
USER_NAME=postgres # ユーザー名
USER_PASS=postgres # パスワード
  1. compose.yamlを作成する。
touch compose.yaml
services:
  pgsql_db:
    image: postgres:${POSTGRES_VERSION}
    container_name: ${CONTAINER_NAME}
    hostname: ${HOSTNAME}
    ports:
      - "5432:5432"
    restart: always
    environment:
      - POSTGRES_USER=${USER_NAME}
      - POSTGRES_PASSWORD=${USER_PASS}
    volumes:
      - db_vol:/var/lib/postgresql/data

volumes:
  db_vol:
  1. コンテナを起動する
    ※必ず .env ファイルを作成し、必要な変数を設定してから実行してください。
docker compose up -d
  1. コンテナを削除する場合は以下のコマンドを実行する。
docker compose down
  1. TablePlusに接続する。

こちらのサイトを参照

アプリを開いて右クリックして、New -> Connection

  1. データベースを作成する。
CREATE DATABASE company_db;

成功するとこのようなlogが表示される。

SQLのクエリを実行する。create -> insert -> select

-- `employees` テーブルが存在する場合は削除する
DROP TABLE IF EXISTS employees;

-- 新しく `employees` テーブルを作成
CREATE TABLE employees (
    id SERIAL PRIMARY KEY,  -- 従業員ID (自動採番)
    name TEXT NOT NULL,     -- 従業員名
    position TEXT, -- 役職
    salary INTEGER -- 給与
);

-- 初期データを挿入
INSERT INTO employees (id, name, position, salary) VALUES
(1, 'Tanaka', 'Manager', 5000),
(2, 'Suzuki', 'Developer', 4000),
(3, 'Yamada', 'Designer', 3500);

SELECT * FROM employees;

Comparison with other tools

DBeaverというデスクトップのアプリを以前使用していたのですが、最近はTable Plusを仕事で使う機会があり、友人のSREもおすすめしていたので使ってみましたが、JDBCドライバーをインストールしなくても接続できたので、ソフトをダウンロードして接続するだけで使い始めることができるので、環境構築と簡単設定ができるツールを求めている方にはおすすめです。

有料版契約してるので勿体無いですしね💸

https://dbeaver.io/

pgAdminというツールもありますが、個人的に操作がしずらいなという感覚でして必要でない限り使わなくなりましたね。
https://www.pgadmin.org/

Discussion