create_duplicate_business_cards_table.sql 1.9 KB

123456789101112131415161718192021222324252627282930313233343536
  1. -- ================================================================
  2. -- 创建 duplicate_business_cards 表脚本
  3. -- 用于存储重复名片处理记录
  4. -- 创建日期: 2024年
  5. -- ================================================================
  6. -- 创建 duplicate_business_cards 表
  7. CREATE TABLE duplicate_business_cards (
  8. id SERIAL PRIMARY KEY,
  9. main_card_id INTEGER NOT NULL,
  10. suspected_duplicates JSONB NOT NULL,
  11. duplicate_reason VARCHAR(200) NOT NULL,
  12. processing_status VARCHAR(20) DEFAULT 'pending',
  13. created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
  14. processed_at TIMESTAMP,
  15. processed_by VARCHAR(50),
  16. processing_notes TEXT
  17. );
  18. -- 添加外键约束
  19. ALTER TABLE duplicate_business_cards
  20. ADD CONSTRAINT fk_duplicate_business_cards_main_card_id
  21. FOREIGN KEY (main_card_id) REFERENCES business_cards(id) ON DELETE CASCADE;
  22. -- 添加表和字段注释
  23. COMMENT ON TABLE duplicate_business_cards IS '重复名片处理记录表,用于存储发现的疑似重复名片信息和处理状态';
  24. COMMENT ON COLUMN duplicate_business_cards.id IS '主键ID,自增序列';
  25. COMMENT ON COLUMN duplicate_business_cards.main_card_id IS '新创建的主记录ID,关联business_cards表';
  26. COMMENT ON COLUMN duplicate_business_cards.suspected_duplicates IS '疑似重复记录列表,JSON格式存储';
  27. COMMENT ON COLUMN duplicate_business_cards.duplicate_reason IS '重复原因描述,最大200字符';
  28. COMMENT ON COLUMN duplicate_business_cards.processing_status IS '处理状态:pending(待处理)/processed(已处理)/ignored(已忽略)';
  29. COMMENT ON COLUMN duplicate_business_cards.created_at IS '记录创建时间';
  30. COMMENT ON COLUMN duplicate_business_cards.processed_at IS '处理时间,记录被处理时的时间戳';
  31. COMMENT ON COLUMN duplicate_business_cards.processed_by IS '处理人员标识,最大50字符';
  32. COMMENT ON COLUMN duplicate_business_cards.processing_notes IS '处理备注,记录处理过程中的详细说明';