feat: add zoo sample
This commit is contained in:
30
src/main/resources/db/migration/V1__Create_Animal_Table.sql
Normal file
30
src/main/resources/db/migration/V1__Create_Animal_Table.sql
Normal file
@@ -0,0 +1,30 @@
|
||||
-- animal 테이블 생성
|
||||
CREATE TABLE tb_animal
|
||||
(
|
||||
uid BIGSERIAL PRIMARY KEY,
|
||||
uuid UUID NOT NULL UNIQUE,
|
||||
category VARCHAR(50),
|
||||
species VARCHAR(100),
|
||||
name VARCHAR(200) NOT NULL,
|
||||
is_deleted BOOLEAN NOT NULL DEFAULT FALSE,
|
||||
created_date TIMESTAMPTZ NOT NULL,
|
||||
modified_date TIMESTAMPTZ NOT NULL
|
||||
);
|
||||
|
||||
-- 인덱스 생성
|
||||
CREATE INDEX idx_animal_uuid ON tb_animal (uuid);
|
||||
CREATE INDEX idx_animal_category ON tb_animal (category);
|
||||
CREATE INDEX idx_animal_species ON tb_animal (species);
|
||||
CREATE INDEX idx_animal_name ON tb_animal (name);
|
||||
CREATE INDEX idx_animal_is_deleted ON tb_animal (is_deleted);
|
||||
|
||||
-- 주석 추가
|
||||
COMMENT ON TABLE tb_animal IS '동물원 동물 정보';
|
||||
COMMENT ON COLUMN tb_animal.uid IS '고유 식별자 (PK)';
|
||||
COMMENT ON COLUMN tb_animal.uuid IS 'UUID (Unique)';
|
||||
COMMENT ON COLUMN tb_animal.category IS '구분 (MAMMALS, BIRDS, FISH,AMPHIBIANS,REPTILES,INSECTS, INVERTEBRATES )';
|
||||
COMMENT ON COLUMN tb_animal.species IS '동물 종';
|
||||
COMMENT ON COLUMN tb_animal.name IS '동물 이름';
|
||||
COMMENT ON COLUMN tb_animal.is_deleted IS '삭제 여부';
|
||||
COMMENT ON COLUMN tb_animal.created_date IS '생성일시';
|
||||
COMMENT ON COLUMN tb_animal.modified_date IS '수정일시';
|
||||
28
src/main/resources/db/migration/V2__Create_Zoo_Table.sql
Normal file
28
src/main/resources/db/migration/V2__Create_Zoo_Table.sql
Normal file
@@ -0,0 +1,28 @@
|
||||
-- zoo 테이블 생성
|
||||
CREATE TABLE tb_zoo
|
||||
(
|
||||
uid BIGSERIAL PRIMARY KEY,
|
||||
uuid UUID NOT NULL UNIQUE,
|
||||
name VARCHAR(200) NOT NULL,
|
||||
location VARCHAR(300),
|
||||
description TEXT,
|
||||
is_deleted BOOLEAN NOT NULL DEFAULT FALSE,
|
||||
created_date TIMESTAMPTZ NOT NULL,
|
||||
modified_date TIMESTAMPTZ NOT NULL
|
||||
);
|
||||
|
||||
-- 인덱스 생성
|
||||
CREATE INDEX idx_zoo_uuid ON tb_zoo (uuid);
|
||||
CREATE INDEX idx_zoo_name ON tb_zoo (name);
|
||||
CREATE INDEX idx_zoo_is_deleted ON tb_zoo (is_deleted);
|
||||
|
||||
-- 주석 추가
|
||||
COMMENT ON TABLE tb_zoo IS '동물원 정보';
|
||||
COMMENT ON COLUMN tb_zoo.uid IS '고유 식별자 (PK)';
|
||||
COMMENT ON COLUMN tb_zoo.uuid IS 'UUID (Unique)';
|
||||
COMMENT ON COLUMN tb_zoo.name IS '동물원 이름';
|
||||
COMMENT ON COLUMN tb_zoo.location IS '위치';
|
||||
COMMENT ON COLUMN tb_zoo.description IS '설명';
|
||||
COMMENT ON COLUMN tb_zoo.is_deleted IS '삭제 여부';
|
||||
COMMENT ON COLUMN tb_zoo.created_date IS '생성일시';
|
||||
COMMENT ON COLUMN tb_zoo.modified_date IS '수정일시';
|
||||
16
src/main/resources/db/migration/V3__Add_Zoo_Id_To_Animal.sql
Normal file
16
src/main/resources/db/migration/V3__Add_Zoo_Id_To_Animal.sql
Normal file
@@ -0,0 +1,16 @@
|
||||
-- animal 테이블에 zoo_id 컬럼 추가
|
||||
ALTER TABLE tb_animal
|
||||
ADD COLUMN zoo_id BIGINT;
|
||||
|
||||
-- zoo_id에 대한 외래 키 제약조건 추가
|
||||
ALTER TABLE tb_animal
|
||||
ADD CONSTRAINT fk_animal_zoo
|
||||
FOREIGN KEY (zoo_id)
|
||||
REFERENCES tb_zoo (uid)
|
||||
ON DELETE SET NULL;
|
||||
|
||||
-- zoo_id 인덱스 생성
|
||||
CREATE INDEX idx_animal_zoo_id ON tb_animal (zoo_id);
|
||||
|
||||
-- 주석 추가
|
||||
COMMENT ON COLUMN tb_animal.zoo_id IS '동물원 ID (FK)';
|
||||
Reference in New Issue
Block a user