-- ===================================================================== -- project_db 마이그레이션 005 — 댓글(채팅) 첨부파일/이미지 -- ===================================================================== -- 멱등. task_attachments 를 그대로 재사용하되, 댓글에 딸린 파일은 -- comment_id 를 채워 채팅 팝업에서 말풍선 안에 표시한다(comment_id NULL = -- 기존처럼 업무 "첨부파일" 패널 전용, 설명란 이미지 삽입도 포함). -- 댓글이 삭제되면(ON DELETE CASCADE) 거기 딸린 첨부도 함께 삭제된다 — -- 파일 라우터가 디스크 파일까지 지우진 못하므로(DB 트리거 아님) 드문 -- 경우지만 고아 파일이 남을 수 있다는 점은 감안한다. -- -- 실행: -- docker exec -i postgres-db psql -U postgres -d project_db \ -- < scripts/sql/project_db_005_comment_attachments.sql -- ===================================================================== \set ON_ERROR_STOP on \connect project_db ALTER TABLE task_attachments ADD COLUMN IF NOT EXISTS comment_id BIGINT REFERENCES task_comments(id) ON DELETE CASCADE; CREATE INDEX IF NOT EXISTS idx_task_attachments_comment ON task_attachments (comment_id); SELECT 'project_db 005 ready' AS status;