-- CT-05: CRUD 활동 로그 테이블
CREATE TABLE IF NOT EXISTS `activity_log` (
  `al_idx` INT UNSIGNED NOT NULL AUTO_INCREMENT,
  `al_mb_idx` INT UNSIGNED DEFAULT NULL COMMENT '회원 PK',
  `al_action` VARCHAR(20) NOT NULL COMMENT 'create/update/delete',
  `al_table` VARCHAR(100) NOT NULL COMMENT '대상 테이블명',
  `al_record_id` INT UNSIGNED NOT NULL DEFAULT 0 COMMENT '대상 레코드 PK',
  `al_data_before` JSON DEFAULT NULL COMMENT '변경 전 데이터',
  `al_data_after` JSON DEFAULT NULL COMMENT '변경 후 데이터',
  `al_ip` VARCHAR(45) NOT NULL DEFAULT '' COMMENT 'IP 주소',
  `al_regdate` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '기록일시',
  PRIMARY KEY (`al_idx`),
  KEY `idx_al_table_record` (`al_table`, `al_record_id`),
  KEY `idx_al_mb` (`al_mb_idx`),
  KEY `idx_al_regdate` (`al_regdate`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='CRUD 활동 로그';
