MACでPostgreSQLの基本的なDatabeseの作成と削除

#はじめに
* macでpostgresql@10を操作した時なかなか苦戦したので備忘録としての記事を残す。
* Web開発するときに役立つかも（特にmigration）...

# 環境
* Mac: Catalina 10.15.6
* postgreSQL: postgresql@10

# インストール
    $ brew install postgresql@10
注意： ちゃんと@10をつけること。最新版が欲しい方は@移行はいらない。
また、

    $ brew search postgresql
これを実行すると、どのバージョンがあるか確認できる

    $ brew search postgresql 
    ==> Formulae
    postgresql                         postgresql@10 ✔                    
    postgresql@11                      postgresql@9.4                     
    postgresql@9.5                     postgresql@9.6
    ==> Casks
    navicat-for-postgresql


#確認
    $ psql -V
    psql (PostgreSQL) 10.14
で バージョン確認できる

# 環境設定
インストールをしたら、まずはじめにPATHを通そう!!
postgresqlがある場所は各自確認しておく.
    
vimで.bash_profileを開く。

    vi .bash_prifile
エディタを開いたらPATHを以下のように通す。

    export PATH=$PATH:/usr/local/Cellar/postgresql@10/10.14/bin/

# PostgreSQLを起動
バージョン指定した人はpostgresqlの後に@~をつけておく。指定してない人はpostgresqlのままで大丈夫。

    $ brew services start postgresql@10

#### 「createdb」コマンドを実行してデータベース「test」を作成する

    $ createdb test
#### データベース一覧を確認する

    $ psql -l
                                 List of databases
    Name      |  Owner  | Encoding |   Collate   |    Ctype    |  Access 
                                                               |  privileges  
    ---------------+---------+----------+-------------+-------------+---------
    postgres   | kanzaki | UTF8   | en_US.UTF-8 | en_US.UTF-8 | 
    test       | kanzaki | UTF8   | en_US.UTF-8 | en_US.UTF-8 | 
    template0  | kanzaki | UTF8   | en_US.UTF-8 | en_US.UTF-8 | =c/kanzaki  +
               |         |        |             |             | kanzaki=CTc/ 
               |         |        |             |             | kanzaki
    template1  | kanzaki | UTF8   | en_US.UTF-8 | en_US.UTF-8 | =c/kanzaki  +
               |         |        |             |             | kanzaki=CTc/ 
               |         |        |             |             | kanzaki
    (4 rows)
testというDBが確認できた。

# DataBase操作
ここに時間がかかった。恥ずかしながら、Macで`\`(バックスラッシュ)の表し方を知らずにDBの操作をしようとしていた。

Macで `\`は様々な表し方はあるがpostgresql@10の自分の環境では、
`option` + `fn` + `¥` でDB内で必要な操作ができた。
### Databaseにアクセス

    $ psql postgres
    postgres=#
これでpostgresqlの操作画面に移る。バージョン指定はいらない。

### DatabaseからExit
macの場合`control` + `D`でexitできるが、コマンドでは先ほどの`\`と`q`で出ることができる

    postgres=# \q

### Database[test]を削除する 

    $ dropdb test
これで基本的な操作は終了。

### 削除確認
    $ psql -l
                                 List of databases
    Name      |  Owner  | Encoding |   Collate   |    Ctype    |  Access 
                                                               |  privileges  
    ---------------+---------+----------+-------------+-------------+---------
    postgres   | kanzaki | UTF8   | en_US.UTF-8 | en_US.UTF-8 | 
    template0  | kanzaki | UTF8   | en_US.UTF-8 | en_US.UTF-8 | =c/kanzaki  +
               |         |        |             |             | kanzaki=CTc/ 
               |         |        |             |             | kanzaki
    template1  | kanzaki | UTF8   | en_US.UTF-8 | en_US.UTF-8 | =c/kanzaki  +
               |         |        |             |             | kanzaki=CTc/ 
               |         |        |             |             | kanzaki
    (3 rows)
`test`のDatabaseが削除されていることを確認。

# 最後に
* PostgreSQLの基本的なDatabaseの作成と削除をまとめた。
* PostgreSQLのコンソール内では様々な操作が可能であるので、今度はその操作も勉強してみたい。

# 参考文献
[PostgreSQLをコマンドラインで操作する](https://www.atmarkit.co.jp/ait/articles/0010/19/news002.html)
[【勉強用】PostgreSQLの基本操作](https://qiita.com/tarotaro1129/items/c897683fb7fbd30e7326)