Plsql 问题定义:我想写一个pl/SQL块来输入三个主题的标记,并想显示相同主题的结果(百分比)
ORA-06550:第11行,第20列:PLS-00103:遇到符号“”几乎到处都缺少。Plsql 问题定义:我想写一个pl/SQL块来输入三个主题的标记,并想显示相同主题的结果(百分比),plsql,Plsql,ORA-06550:第11行,第20列:PLS-00103:遇到符号“”几乎到处都缺少。DBMS\u输出。PUT\u行需要字符串作为参数,因此应将所有这些字母括在单引号中 这至少包括: DECLARE sub1 NUMBER; sub2 NUMBER; sub3 NUMBER; percent REAL; BEGIN sub1 := :subject1; sub2 := :subject2; sub3 := :subje
DBMS\u输出。PUT\u行
需要字符串作为参数,因此应将所有这些字母括在单引号中
这至少包括:
DECLARE
sub1 NUMBER;
sub2 NUMBER;
sub3 NUMBER;
percent REAL;
BEGIN
sub1 := :subject1;
sub2 := :subject2;
sub3 := :subject3;
percent := (sub1 + sub2 + sub3) / 3;
IF ( percent >= 0
AND percent < 35)
THEN
DBMS_OUTPUT.put_line ('F');
ELSIF ( percent >= 35
AND percent < 50)
THEN
DBMS_OUTPUT.put_line ('d');
ELSIF ( percent >= 50
AND percent < 65)
THEN
DBMS_OUTPUT.put_line ('c');
ELSIF ( percent >= 65
AND percent < 80)
THEN
DBMS_OUTPUT.put_line ('b');
ELSIF (percent >= 80)
THEN
DBMS_OUTPUT.put_line ('a');
END IF;
END;
声明
sub1号;
sub2号;
sub3数;
真实百分比;
开始
sub1:=:subject1;
sub2:=:subject2;
sub3:=:subject3;
百分比:=(sub1+sub2+sub3)/3;
如果(百分比>=0
和百分比<35)
然后
DBMS_OUTPUT.put_行('F');
ELSIF(百分比>=35
和百分比<50)
然后
DBMS_OUTPUT.put_行('d');
ELSIF(百分比>=50
和百分比<65)
然后
DBMS_OUTPUT.put_行('c');
ELSIF(百分比>=65
和百分比<80)
然后
DBMS_OUTPUT.put_行('b');
ELSIF(百分比>=80)
然后
DBMS_OUTPUT.put_行('a');
如果结束;
结束;
您的代码中有许多语法错误,请查看下面我更正的代码,并比较您的代码,这样您就可以了解缺少关键字的地方了
declare
sub1 number;
sub2 number;
sub3 number;
percent number;
begin
/* sub1:= :Subject1;
sub2:= :Subject2;
sub3:= :Subject3;*/
sub1:= 40;
sub2:= 76;
sub3:= 84;
percent:= (sub1+sub2+sub3)/3;
if (percent between 0 and 34) then
dbms_output.put_line('F');
elsif (percent between 35 and 49) then
dbms_output.put_line('d');
elsif (percent between 50 and 64) then
dbms_output.put_line('c');
elsif (percent between 65 and 79) then
dbms_output.put_line('b');
else
dbms_output.put_line('a');
end if;
end;
如果(百分数>=0和百分数)非常感谢,亲爱的WilsonI已经添加了f(百分数>=0和百分数
declare
sub1 number;
sub2 number;
sub3 number;
percent number;
begin
/* sub1:= :Subject1;
sub2:= :Subject2;
sub3:= :Subject3;*/
sub1:= 40;
sub2:= 76;
sub3:= 84;
percent:= (sub1+sub2+sub3)/3;
if (percent between 0 and 34) then
dbms_output.put_line('F');
elsif (percent between 35 and 49) then
dbms_output.put_line('d');
elsif (percent between 50 and 64) then
dbms_output.put_line('c');
elsif (percent between 65 and 79) then
dbms_output.put_line('b');
else
dbms_output.put_line('a');
end if;
end;