この記事は、PostgreSQLの初心者向けの内容となります。
主な内容は、サンプルデータベースの作り方です。
もちろん、そのデータベースにはデータの用意されたテーブルが存在しています。
そのため、PostgreSQLの学習や練習には最適と言えるでしょう。
また、複雑なクエリの検証にも使えます。
その意味では、PostgreSQLの中級者・上級者向けにもなります。
本記事の内容
- サンプルデータベースのダウンロード
- サンプルデータベースの構築
- サンプルデータベースの確認(テーブル一覧)
それでは、上記に沿って解説していきます。
サンプルデータベースのダウンロード
サンプルデータベースは、PostgreSQLのチュートリアルサイトで公開されています。
https://www.postgresqltutorial.com/postgresql-sample-database/
上記ページにアクセスします。
以下のボタンまでスクロール。
「Download DVD Rental Sample Database」をクリック。
(もしくは、リンク先のURLをwgetでファイル保存)
ダウンロードされるファイル(dvdrental.zip)は、zip形式で容量が538KBです。
では、以下ではダウンロードしたファイルをもとにサンプルデータベースを作っていきます。
サンプルデータベースの構築
以下の工程毎に説明していきます。
なお、検証環境はLinux(Ubuntu)となります。
- データベースの作成
- データのインポート
データベースの作成
PostgreSQLのクライアントアプリケーションであるpsqlを起動させます。
$ psql psql (10.15 (Ubuntu 10.15-0ubuntu0.18.04.1)) Type "help" for help. postgres=#
CREATE DATABASEで「dvdrental」データベースを作成。
postgres=# CREATE DATABASE dvdrental; CREATE DATABASE
psqlから抜けます。
postgres-# \q $
データのインポート
dvdrental.zipのある場所まで移動。
そこで、zipファイルを解凍します。
$ unzip dvdrental.zip Archive: dvdrental.zip inflating: dvdrental.tar
dvdrental.tarが作成されます。
このアーカイブファイルをpg_restoreでリストアします。
$ pg_restore -U postgres -d dvdrental dvdrental.tar
成功していても、これといった反応はありません。
無言で完了します。
なお、pg_restoreもPostgreSQLのクライアントアプリケーションです。
PostgreSQLには、実に多くのクライアントアプリケーションが存在しています。
そのことに関しては、次の記事で触れています。
最後に、本当にデータがインポートされたのかどうかを確認します。
サンプルデータベースの確認(テーブル一覧)
PostgreSQLサーバーに接続するために、psqlを起動させます。
まず、データベースdvdrentalに接続します。
postgres=# \c dvdrental You are now connected to database "dvdrental" as user "postgres".
そして、テーブル一覧を確認します。
dvdrental=# \dt List of relations Schema | Name | Type | Owner --------+---------------+-------+---------- public | actor | table | postgres public | address | table | postgres public | category | table | postgres public | city | table | postgres public | country | table | postgres public | customer | table | postgres public | film | table | postgres public | film_actor | table | postgres public | film_category | table | postgres public | inventory | table | postgres public | language | table | postgres public | payment | table | postgres public | rental | table | postgres public | staff | table | postgres public | store | table | postgres (15 rows)
テーブル一覧まで確認できれば、これ以上の確認はいらないでしょう。
ER図も公開されています。
これは、プログラミング初心者にとっていい教材ではないでしょうか?
SQLの勉強になるのは、もちろんです。
それに加えて、データベース設計の勉強にもなりそうです。
実際にこのER図を片手に、SQLでいろいろと検証できそうですからね。