我需要一个ALGO来创建一个 JSP ,它将接受多个用户输入,并将它们与多个 MYSQL 表匹配。
让我们说我正在尝试建立疾病诊断系统,用户将输入他们的症状。因此JSP将获取提供的输入并将它们与不同的表匹配。每种疾病都有自己的表格和症状列在其中。所以它会找到与之匹配的表格,并将疾病名称作为输出。
我谦卑地道歉我还不够清楚。 我是这个的新手。任何帮助将不胜感激。 谢谢!
答案 0 :(得分:0)
我认为您应该重新考虑您的数据模型。通常,您不应动态创建或搜索表名,而是(在使用RDBMS时)使用关系以动态关联概念。
对于您的示例,我建议通过中间表(Disease
)使用Symptom
表,disease_symptom
表以及它们之间的多对多关系。
+-------------+ +---------------------+ +-------------+
| Disease | | Disease_Symptom | | Symptom |
+-------------+ +---------------------+ +-------------+
| id : int |_____| disease : int (FK) |______|id: int |
|name: str | | symptom : int (FK) | |name: str |
| | | | | |
+-------------+ +---------------------+ +-------------+
这样你可以进行类似这样的查询:
SELECT
D.id, D.name
FROM
Disease D
JOIN Disease_Symptom DS ON (D.id = DS.disease)
JOIN Symptom S ON (DS.symptom = S.id)
WHERE
{user_input} = S.name;
或者您可以使用一些ORM来查找与您的用户输入匹配的症状的相关对象。
注意:自从我编写原始SQL查询以来已经很长时间了,所以如果我错了,请更正我;)