我现在要设计一个用SpringBoot写的用药管理系统服务器,家庭药库这个功能这里需要存储每个家庭都有哪些药。
现在想不好以什么形式存储这些信息,如果用MySQL的话就需要给每一个家庭都新增一个表,放在SpringBoot里就得对应创建N多个实体类,这显然是不合理的。
但如果我把所有家庭拥有的药都存在一个表里面,通过查询子表的方式提供给每一家他们家有什么药,又觉得这个表不够合理。
我也在考虑用非关系型数据库,但好像都避不开创建N多个实体类的难题。
家庭表、药品表、家庭药品表(多对多的关系)
关于所有家庭拥有的药都存在一个表里面这个问题是合理的。
不可能去给每个家庭设计一张表,问题不在于对应几个实体,而是家庭本身就一个实体,不同的家庭就是不同的记录。
找出家庭和药品里面的关系,一对一、多对一、多对多等。
建立表之间的关联关系表(中间表)
家庭跟药的表建个关联关系表
家庭表 保存家庭信息
医药表 保存医药信息
家庭-医药表 可以根据家庭表的主键跟医药表的主键关联,然后就可以获取对应数据