我是 CodeIgniter 的初学者。我在数组中有一些问题。我有 3 个下拉菜单来选择通过药物数据库获取的药物。但我不明白如何在表格的一个字段中放置 3 个值。有两个表:药品表(medicine_id ,medicine_name)处方表(prescription_id,patient_id,symptoms,disgonis,medicine_id,m_note,date)如何在medicine_id 列中放置多个值?
3 回答
慕村225694
TA贡献1880条经验 获得超4个赞
您不能将多个值放入 mysql 的一列中。你在这里有一个所谓的 1:n 关系。1 处方可以有 n 个药物。
为了在 mysql 中表示该关系,您需要创建一个新表
Prescription_Medicine(prescription_id,medicine_id)
处方上的每种药物都有一行。您应该按照评论者的建议快速了解数据库规范化。
蛊毒传说
TA贡献1895条经验 获得超3个赞
第一种方法:不推荐
您可以将medicine_id 字段设置为varchar 并以逗号分隔的形式保存所有药物ID。当您需要将 Prescription 表加入 Medicine 表时,您必须使用 FIND_IN_SET。但不推荐这样做,因为它违反了规范化规则。它会减慢你的执行速度。
第二种方法:
您可以制作另一个表,您将在其中存储处方 ID 和药物 ID。正如@Sam Tigle 告诉你的那样。
- 3 回答
- 0 关注
- 152 浏览
添加回答
举报
0/150
提交
取消