create_user_profile_table.sql 3.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. -- 创建用户扩展信息表(简化版,只包含必要字段)
  2. CREATE TABLE IF NOT EXISTS `user_profile` (
  3. `profile_id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键ID',
  4. `user_id` BIGINT NOT NULL COMMENT '用户ID',
  5. `house` TINYINT DEFAULT 0 COMMENT '房产 0-无 1-有',
  6. `car` TINYINT DEFAULT 0 COMMENT '车辆 0-无 1-有',
  7. `height` INT DEFAULT NULL COMMENT '身高cm',
  8. `weight` INT DEFAULT NULL COMMENT '体重kg',
  9. `star` VARCHAR(20) DEFAULT NULL COMMENT '星座',
  10. `animal` VARCHAR(20) DEFAULT NULL COMMENT '生肖',
  11. `real_name` VARCHAR(50) DEFAULT NULL COMMENT '真实姓名',
  12. `id_card` VARCHAR(18) DEFAULT NULL COMMENT '身份证号',
  13. `education_level` TINYINT DEFAULT NULL COMMENT '学历等级',
  14. `hobby` TEXT COMMENT '兴趣爱好',
  15. `school_name` VARCHAR(100) DEFAULT NULL COMMENT '学校名称',
  16. `company` VARCHAR(100) DEFAULT NULL COMMENT '工作单位',
  17. `salary_range` TINYINT DEFAULT NULL COMMENT '薪资范围',
  18. `job_title` VARCHAR(50) DEFAULT NULL COMMENT '职位',
  19. `marital_status` TINYINT DEFAULT NULL COMMENT '婚姻状况',
  20. `is_real_name_verified` TINYINT DEFAULT 0 COMMENT '是否实名认证',
  21. `is_education_verified` TINYINT DEFAULT 0 COMMENT '是否学历认证',
  22. `is_work_verified` TINYINT DEFAULT 0 COMMENT '是否工作认证',
  23. `is_marital_verified` TINYINT DEFAULT 0 COMMENT '是否婚姻状态认证',
  24. `verified_at` DATETIME DEFAULT NULL COMMENT '认证时间',
  25. `province_id` INT DEFAULT NULL COMMENT '省份ID',
  26. `city_id` INT DEFAULT NULL COMMENT '城市ID',
  27. `area_id` INT DEFAULT NULL COMMENT '区域ID',
  28. `privacy_salary` TINYINT DEFAULT 0 COMMENT '薪资隐私设置',
  29. `privacy_phone` TINYINT DEFAULT 0 COMMENT '手机隐私设置',
  30. `authenticity_score` INT DEFAULT 0 COMMENT '真实度评分',
  31. PRIMARY KEY (`profile_id`),
  32. UNIQUE KEY `uk_user_id` (`user_id`),
  33. KEY `idx_authenticity_score` (`authenticity_score`)
  34. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户扩展信息表';
  35. -- 插入测试数据
  36. INSERT INTO `user_profile` (`user_id`, `house`, `car`, `height`, `weight`, `star`, `animal`,
  37. `real_name`, `id_card`, `education_level`, `hobby`, `school_name`, `company`, `salary_range`,
  38. `job_title`, `marital_status`, `is_real_name_verified`, `is_education_verified`,
  39. `is_work_verified`, `is_marital_verified`, `privacy_salary`, `privacy_phone`, `authenticity_score`)
  40. VALUES
  41. (1, 1, 1, 175, 65, '白羊座', '龙', '张三', '110101199001011234', 3,
  42. '["旅游", "阅读", "运动"]', '北京大学', '某科技公司', 3, '软件工程师', 0,
  43. 1, 1, 1, 1, 0, 1, 85)
  44. ON DUPLICATE KEY UPDATE
  45. `house` = VALUES(`house`),
  46. `car` = VALUES(`car`),
  47. `height` = VALUES(`height`),
  48. `weight` = VALUES(`weight`),
  49. `star` = VALUES(`star`),
  50. `animal` = VALUES(`animal`),
  51. `real_name` = VALUES(`real_name`),
  52. `id_card` = VALUES(`id_card`),
  53. `education_level` = VALUES(`education_level`),
  54. `hobby` = VALUES(`hobby`),
  55. `school_name` = VALUES(`school_name`),
  56. `company` = VALUES(`company`),
  57. `salary_range` = VALUES(`salary_range`),
  58. `job_title` = VALUES(`job_title`),
  59. `marital_status` = VALUES(`marital_status`),
  60. `is_real_name_verified` = VALUES(`is_real_name_verified`),
  61. `is_education_verified` = VALUES(`is_education_verified`),
  62. `is_work_verified` = VALUES(`is_work_verified`),
  63. `is_marital_verified` = VALUES(`is_marital_verified`),
  64. `privacy_salary` = VALUES(`privacy_salary`),
  65. `privacy_phone` = VALUES(`privacy_phone`),
  66. `authenticity_score` = VALUES(`authenticity_score`);