大家好,我想在我的oracle表单中创建一个save按钮,这个表单有很多症状复选框,当选中时会记录一个1,我想用一种方法将这些症状计数到一个名为count\u symptoms的列中,如果这个数字大于3,那么结果列的值将是“正”,如果不是,它将是“负”,是的,它是一个covid19项目:),最后它将提交\u表单;
这张table是这样的:
[ ID NAME FEVER COUGH HEADACHE.....NO_OF_SYMPTOMS RESULT
123. SCOTT 1. 1. 1. 3. POSITIVE ]
我以前尝试过这个create table语句,但它不起作用,所以现在我想如果我用button pl语句来实现它,它可能会起作用
create table covid(ID NUMBER(7) , NAME VARCHAR2(32) ,DEPT VARCHAR2(16) , FEVER NUMBER(1) , COUGH NUMBER(1) ,
TIREDNESS NUMBER(1) , SHORT_BREATH NUMBER(1) ,SORE_THROAT NUMBER(1) ,CHEST_PAIN NUMBER(1) ,
LOSE_SENSES NUMBER(1),RUNNY_NOSE NUMBER(1), TEST_DATE DATE ,
SYMPTOMS NUMBER(16) ,
(CASE
WHEN SYMPTOMS >= 3 THEN 'POSITIVE' ELSE 'NEGATIVE'
END AS RESULT));
/
提前谢谢!
1条答案
按热度按时间r1zk6ea11#
首先,在我看来,数据模型是错误的。应该至少有3个表来处理:patients、symptoms和[patient x symptom],其中包含每个患者的“活跃”症状数据。像这样:
样本数据:
每个患者的症状:以表格形式,
patient
会是一个主块,而patxsym
将是它的细节块(表格布局),所以你可以添加许多必要的症状。这个选项可以很好地扩展。如果出现新的症状,你只要把它们加到
symptom
表和表单使用新添加的症状。你的选择就像一只山羊,你想教它怎么飞,也就是说,它根本不会飞。对于任何新的症状,你必须
alter table并添加新列(针对新症状)
运行forms builder并按编辑表单
为新症状添加新复选框
修改代码
INSERT
sINTO
(因为您有新列和新复选框)修改您可能编写的任何报告
那是一场无尽的噩梦。如果我是你,我就不会这么做。
所以:有一些症状的患者的样本数据:
报告:
每位患者的症状数:
每位患者的症状: