データベースの作成
目次
- 解説
- 1. データベースの作成
- 2. テーブルの作成
- 3. 初期データの追加
解説
1. データベースの作成
次はDBを準備しましょう。
手順1
(1) | 『環境設定』コース内の『Docker > PostgreSQL > DBの起動・停止手順』を参考にPostgreSQLを起動し、pgAdminにログインしてください。 |
(2) | 『SQL』コース内の『データベースを作成しよう』を参考に「tweet_spring」という名前のDBを作成してください。 |
2. テーブルの作成
作成したDBにテーブルを作成しましょう。
手順2
(1) | 『SQL』コース内の『テーブルを作成しよう』を参考に、下記のクエリを実行し、「users」テーブルと、「tweets」テーブルを作成してください。 ※手順1 で作成した「tweet_spring」データベースを対象としたクエリツールを新たに開き、クエリを実行してください。 |
-- usersテーブルを作成
CREATE TABLE users (
id serial PRIMARY KEY,
mail text NOT NULL UNIQUE,
display_name text NOT NULL,
pass text NOT NULL,
profile text
);
-- tweetsテーブルを作成
CREATE TABLE tweets (
id serial PRIMARY KEY,
user_id integer NOT NULL REFERENCES users (id),
post text NOT NULL,
created_at timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
updated_at timestamp
);
3. 初期データの追加
つぶやきアプリ開発で使用する、初期データを登録しましょう。
手順3
(1) | 『SQL』コース内の『データを登録しよう』を参考に、下記のクエリを実行し、「users」テーブルと、「tweets」テーブルに初期データを登録してください。 |
-- usersテーブルに初期データを挿入
INSERT INTO users (mail, display_name, pass, profile) VALUES
('test@test.com', 'テストユーザー', '$2a$08$MJGhfDGUXacl9scG.9G6buHbXBIkOoXAwMamcKvAW9cQlmHQiwvfW', 'テストユーザーです、よろしくお願いします。'),
('yamada@test.com', '山田一郎', '$2a$08$9Vcw8B6VgEFSbmWp2tn6ne/SUzlQcv02v1oBSpjgQQGgdYFUbmtW2', '山田一郎と申します!よろしくお願いします!'),
('tanaka@test.com', '田中花子', '$2a$08$6xIdRhPrwiia6uLSCGdlLeZFTt.Ma1AR.0SPZ5hAoklIBmn9ZZVty', 'つぶやきアプリはじめました、よろしくお願いします。');
-- tweetsテーブルに初期データを挿入
INSERT INTO tweets (user_id, post, created_at, updated_at) VALUES
(1, 'こんにちは、テストユーザーです。', CURRENT_TIMESTAMP - INTERVAL '4 MINUTES', CURRENT_TIMESTAMP - INTERVAL '1 MINUTES'),
(2, 'はじめまして、山田一郎です!', CURRENT_TIMESTAMP - INTERVAL '3 MINUTES', NULL),
(3, '田中花子です、よろしくお願いします。', CURRENT_TIMESTAMP - INTERVAL '2 MINUTES', NULL);
完了したら、正しくデータが登録されているか確認しておきましょう。
※passwordカラムの初期データが、英数字を羅列したものになっていますが、これは後のページで解説します。