一、数据库设计
针对我们的主要功能,我们进行了系统合理的数据库设计。充分考虑到了
1.各数据的关键要素和数据之间的依赖关系,明确每个数据的关键信息,安排好数据之间的连接,确保数据不乱套
2.范式化,确保数据原子性,把数据拆到最小单元
3.合理的反范式保留合理的查询索引,避免连表查询,对常用查询,允许适当数据重复,减少跨表查数据,让查询更快
数据库核心模块设计
1. 患者信息表 (Patient_Info)
字段名 | 类型 | 说明 | 示例 |
patient_id | VARCHAR(36) | 患者唯一标识(UUID) | "a1b2c3d4-..." |
name | VARCHAR(50) | 姓名 | 张三 |
gender | CHAR(1) | 性别(M/F/O) | M |
age | INT | 年龄 | 72 |
contact | VARCHAR(20) | 紧急联系人电话 | 1385678 |
medical_history | TEXT | 病史摘要(如高血压、糖尿病等) | "2018年确诊AD,无卒中史" |
medication | JSON | 当前用药记录(支持动态扩展) | {"药物":"多奈哌齐", "剂量":"5mg/d"} |
2. 临床数据表 (Clinical_Data)
2.1 量表评分表 (Assessment_Scores)
字段名 | 类型 | 说明 | 示例 |
assessment_id | VARCHAR(36) | 评估唯一ID | "b5e6f7g8-..." |
patient_id | VARCHAR(36) | 关联患者ID | "a1b2c3d4-..." |
assessment_type | VARCHAR(20) | 量表类型(MMSE/CDR/ADAS-Cog) | "MMSE" |
score_details | JSON | 结构化评分(支持动态量表) | {"总分":18, "定向力":5} |
assessment_date | DATE | 评估日期 | 2024-03-15 |
2.2 影像资料表 (Imaging_Data)
字段名 | 类型 | 说明 | 示例 |
image_id | VARCHAR(36) | 影像唯一ID | "c9d0e1f2-..." |
patient_id | VARCHAR(36) | 关联患者ID | "a1b2c3d4-..." |
modality | VARCHAR(20) | 影像类型(MRI/PET/CT) | "MRI" |
findings | JSON | 结构化报告(自动提取关键指标) | {"海马体体积": "2.1cm³", "Aβ沉积": "阳性"} |
file_path | VARCHAR(200) | 影像文件存储路径(加密链接) | "/images/a1b2c3d4/mri_20240315.dcm" |
2.3 血液检查表 (Blood_Tests)
字段名 | 类型 | 说明 | 示例 |
test_id | VARCHAR(36) | 检查唯一ID | "d3e4f5g6-..." |
patient_id | VARCHAR(36) | 关联患者ID | "a1b2c3d4-..." |
biomarker_type | VARCHAR(30) | 生物标志物类型 | "Aβ42" |
value | FLOAT | 检测数值 | 450.5 |
unit | VARCHAR(10) | 单位 | "pg/mL" |
test_date | DATE | 检测日期 | 2024-03-10 |
3. 干预计划表 (Intervention_Plans)
3.1 DeepSeek认知训练表 (Cognitive_Training)
字段名 | 类型 | 说明 | 示例 |
plan_id | VARCHAR(36) | 计划唯一ID | "e7f8g9h0-..." |
patient_id | VARCHAR(36) | 关联患者ID | "a1b2c3d4-..." |
training_type | VARCHAR(50) | 训练类型(记忆/注意力/定向力) | "空间记忆训练" |
difficulty_level | INT | 难度等级(1-5级) | 3 |
content | TEXT | 训练内容描述(支持多媒体链接) | "虚拟超市购物任务(链接:training_001)" |
schedule | JSON | 执行计划(频率、时长) | {"频率":"5次/周", "单次时长":"30分钟"} |
3.2 运动计划表 (Exercise_Plans)
字段名 | 类型 | 说明 | 示例 |
exercise_id | VARCHAR(36) | 计划唯一ID | "h1i2j3k4-..." |
patient_id | VARCHAR(36) | 关联患者ID | "a1b2c3d4-..." |
exercise_type | VARCHAR(50) | 运动类型(有氧/平衡/柔韧) | "太极拳" |
intensity | VARCHAR(20) | 强度(低/中/高) | "中等" |
duration | INT | 单次时长(分钟) | 45 |
safety_rules | TEXT | 禁忌症和注意事项 | "避免快速转身,家属陪同" |
4. 执行与反馈表 (Execution_Records)
4.1 训练记录表 (Training_Records)
字段名 | 类型 | 说明 | 示例 |
record_id | VARCHAR(36) | 记录唯一ID | "k5l6m7n8-..." |
patient_id | VARCHAR(36) | 关联患者ID | "a1b2c3d4-..." |
plan_id | VARCHAR(36) | 关联训练计划ID | "e7f8g9h0-..." |
completion_rate | FLOAT | 完成度(0-100%) | 85.0 |
performance | JSON | 动态指标(如反应时间、错误率) | {"反应时间": "2.3s", "正确率": "78%"} |
record_date | DATE | 执行日期 | 2024-03-20 |
4.2 运动记录表 (Exercise_Records)
字段名 | 类型 | 说明 | 示例 |
record_id | VARCHAR(36) | 记录唯一ID | "n9o0p1q2-..." |
patient_id | VARCHAR(36) | 关联患者ID | "a1b2c3d4-..." |
exercise_id | VARCHAR(36) | 关联运动计划ID | "h1i2j3k4-..." |
heart_rate | INT | 平均心率 | 102 |
calories | FLOAT | 消耗卡路里 | 250.5 |
notes | TEXT | 异常情况记录 | "中途头晕,休息5分钟后继续" |
1. 病史时间线表 (Medical_History)
字段名 | 类型 | 说明 | 示例 |
history_id | VARCHAR(36) | 病史记录唯一ID | "h1i2j3k4-..." |
patient_id | VARCHAR(36) | 关联患者ID | "a1b2c3d4-..." |
diagnosis_date | DATE | 诊断日期(支持时间序列分析) | 2020-05-10 |
condition_name | VARCHAR(100) | 疾病名称(标准化ICD-11编码) | "阿尔茨海默病 (ICD-11: 6D85)" |
treatment_summary | TEXT | 治疗措施(手术/药物/物理治疗等) | "口服多奈哌齐5mg/d" |
medical_notes | TEXT | 备注(并发症、疗效、副作用等) | "2021年出现轻度肝功能异常" |
2. 用药记录表 (Medication_Records)
字段名 | 类型 | 说明 | 示例 |
medication_id | VARCHAR(36) | 用药记录唯一ID | "m5n6o7p8-..." |
patient_id | VARCHAR(36) | 关联患者ID | "a1b2c3d4-..." |
medication_name | VARCHAR(100) | 药物名称(通用名,如多奈哌齐) | "多奈哌齐" |
dosage | VARCHAR(50) | 剂量与用法 | "5mg 口服,每日一次" |
medication_start | DATE | 开始用药日期 | 2020-05-15 |
medication_end | DATE | 结束用药日期(NULL表示持续使用) | NULL |
prescription_by | VARCHAR(50) | 处方医生 | "李华(神经内科)" |
并完成了ER图的绘制
ER图