libro
www.tuyano.com
初心者のための Node.jsプログラミング入門

Node.js/ExpressでPostgreSQLを使おう (2/6)

作成:2013-07-06 09:46
更新:2013-07-06 10:19

■Heroku側の準備

続いて、Heroku側の準備をしましょう。これもコマンドプロンプト/ターミナルからコマンド操作で行います。Node.jsアプリに移動してから以下の手順で作業していってください。
heroku login
まだログインしていない場合は、まずherokuにログインしてください。実行するとアカウント(登録メールアドレス)とパスワードを尋ねてくるので正しく入力すればログインされます。
heroku addons:add 
      heroku-postgresql:dev
herokuにPostgreSQLのアドオンを追加します。これは、「heroku addons:add heroku-postgresql:プラン」という形で実行します。無料プランの場合は、プラン名は「dev」になりますので、とりあえずこれで実行しましょう。
heroku pg:promote HEROKU_POSTGRESQL_名前_URL
アドオンが追加されると、「attached as HEROKU_POSTGRESQL_XXX_URL」といったデータベースの名前が表示されます。これをアプリのデフォルトデータベースとして使うようにしておくのが「heroku pg:promote」です。これで、先ほど追加したアドオンのプランが使用されるようになります。


■Herokuにテーブルを作成する

これでデータベースのアドオンは設定できましたが、この状態ではまだデータベースにはテーブルも何もありません。実際にプログラムを作成する前に、テーブルを準備しておくことにしましょう。今回はごく簡単なテーブル「mydata」を用意することにします。これは以下の項目があります。

id:自動的に割り振られる整数値。プライマリキーとなるもの。
name:名前を保管する。テキスト値。
mail:メールアドレスを保管する。テキスト値。
memo:メモ書き。テキスト値。

では、このテーブルをHerokuに作成しましょう。この作業も引き続きコマンドプロンプト/ターミナルで行います。以下のように実行をしてください。
heroku pg:psql
これで、HerokuのデータベースにSQL文を送信し操作できるようになります。このコマンドは、ローカル環境にPostgreSQLがインストールされており、PostgreSQLのプログラムにアクセスできる(環境変数Pathにパスが登録されている)必要があります。その準備ができてないと実行できないので注意してください。

コマンドが無事に通ると、SQL文を入力できる状態になります。では、以下のようにタイプしてテーブル「mydata」を作成しましょう。
 create table mydata (
    id serial primary key,
    name char(50),
    mail char(100),
    memo char(255)
);
これでHerokuに追加したデータベースプランにmydataテーブルが作成されました。後は、プログラムを作成して、このテーブルを利用するだけです。

※プログラムリストが表示されない場合

AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。

※関連コンテンツ

「初心者のための Node.jsプログラミング入門」に戻る