macOSにPostgreSQL環境を整える
PostgreSQLをご存知でしょうか。PostgreSQLは前回macOSにMySQL環境を整えるで述べたMySQLと同じRDB(リレーショナルデーターベース)の一種です。MySQL同様多くのWebサイトやシステムで使われており、同じくOSSでもありますが商用データーベース並に高機能であり主にエンタープライズ向けやWebサービスなどにも使われています。日本では富士通やNTTなどの大手SIerでの採用が目立ちます。また、Instagram、Skype、OpenStreetMapなどの有名なサービスでも活用されています。
また、MySQLとPostgreSQLの違いに関してはこちらに詳しく解説された記事があります.
さて、あなたが自分でWebサービスを開発しようとした際には必ずと言っていいほどデーターベースを扱う必要があります。
例えば、会員登録の機能を開発した場合は氏名やメールアドレスなどの情報を保存しておかなければなりません。それらのデータを保存するのがデーターベースです。今回はmacOSでPostgreSQLをセットアップする方法を解説します。
Postgre.appで簡単インストール
macOSにPostgreSQLをインストールするのは非常に簡単です。MySQLと比較しても恐ろしく簡単です。
まず、postgresapp.comにアクセスします。そこからダウンロードページに移動します。

Latest Release(最新のリリース)から最新のパッケージをダウンロードしてください。

dmgファイルのダウンロードが完了したら、クリックしましょう。以下のような画面が表示されるので左側のアイコンを右側のディレクトリにドラッグ&ドロップしてください。

アプリのコピーが完了したらPostgresというアプリが入っているはずです。起動してみましょう。初回起動ではダイアログが表示されるのでOKを押して先に進んでください。

Postgresが起動すると以下のような画面が立ち上がります。初回起動ではイニシャライズが必要なので赤枠で囲われたボタンを押してください。以上でPostgreSQLのインストール&セットアップは完了です。

PostgreSQLを触ってみる
では、実際にPostgreSQLを触れてみましょう。まずは、データーベースの作成を行います。イニシャライズが正常に完了していると左側から順にpostgres、ユーザー名、template1というデーターベースが作成されています。真ん中のユーザー名(macにログインするユーザー名)のDBアイコンをダブルクリックしましょう。

すると、Terminal(コマンドライン)が立ち上がります。以下のクエリを実行して練習用データーベースを作成します。この例ではpracticeという名前のデーターベースを作成しています。
CREATE DATABASE practice;
CREATE DATABASEと表示されたらデーターベースが正しく作成されているはずです。 \qでプロンプトから抜けることができます。抜けてからTerminalを閉じてもいいでしょう。

Posticoを使ってデーターベースを操作してみる
さて、PostgreSQLのデーターベース作成が完了したので、実際に使って見ようと思います。コマンドライン上でPostgreSQLを扱えるのですが、いきなりはハードルが高いのでPosticoというPostgreSQL クライアントを使います。
Posticoをダウンロード

Posticoはこのサイトからダウンロードできます。DOWNLOADを押してパッケージをダウンロードします。
ZIPファイルがダウンロードされるので完了したらダブルクリックして解凍しましょう。解凍されたPostico.appをApplicationsディレクトリに移動したらインストール完了です。
次に、Posticoを起動してみましょう。下のような画面が立ち上がります。

Nicknameのところに練習を, Databaseのところにpracticeを入力してconnectを押します。

これで、Posticoのセットアップも完了しました。
では、これからPostgreSQLを簡単に操作してみたいと思います。
データーベースではテーブルという表を扱います。今回は下のような名簿をデーターベースに記録しようと思います。
顧客ID | 氏名 | 年齢 | 性別 |
1 | 斎藤飛鳥 | 21 | Female |
2 | 堀未央奈 | 23 | Female |
3 | 与田祐希 | 19 | Female |
上記のような表を作るには、下のSQLクエリーを実行します。クエリーとは問い合わせという意味で、SQLではデーターベースシステムに指示をするための言語という意味になります。念の為、クエリについて簡単に説明します。
CREATE TABLE [テーブル名] (
列名1 型,
列名2 型,
列名2 型
);
CREATE TABLE命令は上のような構文です。CREATE TABLE = テーブルを作れというのが命令になります。そして ( )で囲われた部分で表の構造を定義します。列名は表の名前、年齢、所属といった項目名になります。みなさんがきになるのは型というものだと思います。PostgreSQLでは項目についてデーター型というのを指定します。
これはコンピューターではよくあることで、その項目には数字(整数)が入るのか、文字が入るのかなどのデータの種類を指定します。
では、実際に下記のCREATE TABLE命令を実行してみましょう
CREATE TABLE directory (
ID int,
name varchar(255),
age int,
gender bool
);
まず、SQL Queryのアイコンをクリックしましょう。

次に、テキストエリアに上記のクエリーを記述します。記述が完了したら赤枠で囲われたExecute Statementボタンを押してください。Window下部にCREATE TABLEと表示されたら成功です。

Window左上の戻るボタンで一つ前の画面に移動してください。directoryというテーブルが作成されています。

ではdirectoryをクリックして中身を開いてみます。

まだデーターをいれていないので何も表示されていません。今から、テーブルにデーターを入れていこうと思います。実はPosticoは高機能で上記画像に写っているようなセルに直接値を入力するだけでデーターが入ります。しかし、今回は練習も兼ねてSQL Queryを使ってデーターを入れてみます。
データーを挿入するクエリーは以下のように記述します。
INSERT INTO [テーブル名] VALUES (
項目1, 項目2, 項目3
);
今回の場合ですと、以下のようになるでしょう。
INSERT INTO directory VALUES (
1, '斎藤飛鳥', 21, TRUE
);
テーブル画面から戻り再びSQL Queryからクエリを実行しましょう。

実行が完了したら再びdirectoryテーブルを開いてみましょう。

上の画像のようにデーターが挿入されていたら成功です!
今回はmacOSへのPostgreSQLのセットアップと簡単な操作を行いました。PostgreSQLはWebアプリ開発には必須となるスキルセットの一つです。今後もTIPSTOCK!ではデーターベースに関する記事を配信する予定です。是非、チェックしてください。