Heroku Postgresに接続し、SQLを実行する方法を説明する。

前提条件:herokuDB登録の記事まで完了していること

 

 

1 . DB接続情報を取得する。

管理画面で確認
または

$heroku config

上記を実行する。

 

2 . ローカルにpsql(postgresql)をインストールする。

 

3 . herokuのpostgresに接続する。

$ heroku pg:psql

 

4 . 現在時刻を確認するsqlを実行する。

select current_timestamp;

current_timestamp       
-------------------------------
 2018-05-31 14:43:31.064354+00

どうやらherokuサーバでのタイムゾーンはデフォルトでUTC時間のようだ。
(実行時の時間5/31 23:43)

これは日本時間に変更する必要がある。

 

5  . DBのタイムゾーンを変更する。

alter database 接続情報にあるDataBase名 set timezone = 'Asia/Tokyo';

実行後、\qコマンドを実行で接続を解除し、再度接続することで設定を反映させる。

 

6 . 再度、現在時刻を確認するsqlを実行する。

アプリ名::DATABASE=> select current_timestamp;
       current_timestamp       
-------------------------------
 2018-05-31 23:54:12.512598+09

変わった。これでよし。

7 . テーブル作成SQL(CREATE TABLE)を実行する。

アプリ名::DATABASE=> CREATE TABLE messages
アプリ名::DATABASE-> (
アプリ名::DATABASE(>  user_id character varying(100) NOT NULL,
アプリ名::DATABASE(>  message character varying(100) NOT NULL,
アプリ名::DATABASE(>  speech_date timestamp NOT NULL
アプリ名::DATABASE(> );

8 . 作成したテーブルの情報を確認する。

・テーブル一覧

アプリ名::DATABASE-> \d

・テーブル定義

アプリ名::DATABASE-> \d messages

 

上記実行して見て、テーブルが期待通りに作成されていれば完了。

 

以後は、このテーブルにアクセスしていく形となる。

実際にプログラムでどうやってアクセスして、SQL実行していくかは別の記事で記載していく。

 

メモ:私自身、mysqlに慣れているため、\dコマンドに違和感をかなり感じた・・・

 

1件のコメント

  1. ピンバック: Node.jsからHeroku Postgresを利用する方法 | VavoLab

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください