0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【psql】DDLが記述された複数のSQLファイルをpsqlで順番に実行する方法(Mac)

0
Last updated at Posted at 2026-06-10

目次

やりたいこと

DDL(後述)が記載されたSQLファイルを上から順番に実行してほしい」
という指示がありました。

実際は6ファイルくらいありましたが、ここでは3ファイルとします。

public_schema.sql 
// publicスキーマ t_userテーブルを作成するファイルとする
// PostgreSQL実行環境の設定、既存オブジェクトの削除なども行う

nogizaka_schema.sql 
// nogizakaスキーマを完全に作り直し、業務テーブル一式を作成するファイルとする

insert_nogizaka_schedule.sql
// 初期マスタデータを数件登録するためのデータ投入SQLとする

DDLとは

正式名称:Data Definition Language
データ定義言語と呼ばれる。
テーブルや索引、シーケンスなどのデータベースオブジェクトを定義する言語。

方法

前提条件

DB接続情報は
POSTGRES_DB: project-nogizaka

とします。

流れ

(1)SQLファイルをダウンロードし、Finderの下記に移動

以下のパスは後ほど使用します。

/Users/hoge/Documents/work/client/project-nogizaka/db/DDL

(2)Macのターミナルを開き、プロジェクトのディレクトリがある場所まで移動

user-name ~ % cd /Users/hoge/Documents/work/client/Git/project-nogizaka

user-name project-nogizaka % 

3)project-nogizakaにいる状態で以下を実行

ここで1番初めに実行したいファイル「public_schema.sql」を指定します。

docker exec -i nogizaka-db \
psql -U postgres -d project-nogizaka-local \
< /Users/hoge/Documents/work/client/project-nogizaka/db/DDL/public_schema.sql

実行結果
※ イメージです

SET 
SET 
ALTER TABLE 
DROP SEQUENCE 
DROP TABLE 
DROP SCHEMA 
CREATE SCHEMA 
COMMENT 
SET 
CREATE TABLE 
CREATE SEQUENCE 
ALTER SEQUENCE 
ALTER TABLE 

(5)正常に実行されたのか確認

// psqlに入る
docker exec -it nogizaka-db psql -U postgres
// psqlに入ると以下のようになる
postgres=#

user-name project-nogizaka % ではなくpostgres=# になります。
ここで \dn を入力してEnterをクリック。

postgres=# \dn
 List of schemas
  Name | Owner 
--------+----------
 public | postgres 
(1 row)

Group 44.png

publicスキーマが存在していることが分かります。

(6)正常に実行されたのか確認

次に以下を実行しテーブルが作成されているか確認します。
\dt を入力してEnterをクリック。

postgres=# \dt public.*
	 List of relations
 Schema | Name | Type | Owner 
--------+--------+-------+----------
 public | t_user | table | postgres
 (1 row)

スクリーンショット 2026-06-04 16.40.46.png

参考サイト

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?