006_create_partnership_history_table.sql 2.0 KB

1234567891011121314151617181920212223242526272829303132
  1. -- DDL 006: 파트너십 이력 테이블 생성
  2. -- 생성일: 2025-07-22
  3. -- 목적: 벤더사-인플루언서 파트너십 활동 이력 추적
  4. CREATE TABLE `PARTNERSHIP_HISTORY` (
  5. `SEQ` int(11) NOT NULL AUTO_INCREMENT COMMENT '기본키',
  6. `MAPPING_SEQ` int(11) NOT NULL COMMENT '매핑 테이블 SEQ (VENDOR_INFLUENCER_MAPPING.SEQ 참조)',
  7. `ACTION_TYPE` varchar(50) NOT NULL COMMENT '액션 타입: REQUEST_SENT, REQUEST_APPROVED, REQUEST_REJECTED, REQUEST_CANCELLED, PARTNERSHIP_STARTED, PARTNERSHIP_ENDED, CONTRACT_UPDATED',
  8. `ACTION_BY` int(11) NOT NULL COMMENT '액션 수행자 SEQ (USER_LIST.SEQ 참조)',
  9. `ACTION_DATE` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '액션 수행일시',
  10. `DESCRIPTION` text DEFAULT NULL COMMENT '액션 설명',
  11. `OLD_VALUE` text DEFAULT NULL COMMENT '변경 전 값 (JSON 형태)',
  12. `NEW_VALUE` text DEFAULT NULL COMMENT '변경 후 값 (JSON 형태)',
  13. `IP_ADDRESS` varchar(45) DEFAULT NULL COMMENT '수행자 IP 주소',
  14. `USER_AGENT` varchar(500) DEFAULT NULL COMMENT '사용자 에이전트',
  15. `ADD_INFO1` varchar(500) DEFAULT NULL COMMENT '추가정보1',
  16. `ADD_INFO2` varchar(500) DEFAULT NULL COMMENT '추가정보2',
  17. `ADD_INFO3` varchar(500) DEFAULT NULL COMMENT '추가정보3',
  18. `CREATED_AT` timestamp NOT NULL DEFAULT current_timestamp() COMMENT '생성일시',
  19. PRIMARY KEY (`SEQ`),
  20. INDEX `idx_mapping_seq` (`MAPPING_SEQ`),
  21. INDEX `idx_action_type` (`ACTION_TYPE`),
  22. INDEX `idx_action_by` (`ACTION_BY`),
  23. INDEX `idx_action_date` (`ACTION_DATE`),
  24. INDEX `idx_mapping_action_date` (`MAPPING_SEQ`, `ACTION_DATE`),
  25. CONSTRAINT `fk_partnership_history_mapping`
  26. FOREIGN KEY (`MAPPING_SEQ`) REFERENCES `VENDOR_INFLUENCER_MAPPING` (`SEQ`)
  27. ON DELETE CASCADE ON UPDATE CASCADE,
  28. CONSTRAINT `fk_partnership_history_user`
  29. FOREIGN KEY (`ACTION_BY`) REFERENCES `USER_LIST` (`SEQ`)
  30. ON DELETE RESTRICT ON UPDATE CASCADE
  31. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_general_ci COMMENT='파트너십 이력 테이블';