2.给学生表增加一百个学生分别为.net1...net100,序号是奇数时学生的性别为男,否则性别为女,能被7整除或以7为尾数时的学生不插入表中.
declare
sex char(2);
sname varchar2(20);
begin
for i in 1..100 loop
sname:='.net'||i;
if mod(i,2)<>0 then
sex:='男';
else
sex:='女';
end if;
if mod(i,7)=0 or mod(i,10)=7 then
goto a;
end if;
insert into student2 values(i,sname,sex);
<<a>>
end loop;
end;
大家帮忙看以下哪里有错呀?
------解决方案--------------------
if mod(i,7)!=0 and mod(i,10)!=7 then
insert into a values(i,sname);
end if;
改成这样
------解决方案--------------------
declare
sex char(2);
sname varchar2(20);
begin
for i in 1..100 loop
sname:='.net'||i;
if mod(i,2)<>0 then
sex:='男';
else
sex:='女';
end if;
if mod(i,7)!=0 and mod(i,10)!=7 then
insert into bgsyao04 values(i,sname);
end if;
end loop;
end;
------解决方案--------------------
- SQL code
declare sex char(2); sname varchar2(20);begin for i in 1..100 loop sname:='.net'||i; if mod(i,2)<>0 then sex:='男'; else sex:='女'; end if; if mod(i,7)=0 or mod(i,10)=7 then goto a; end if; insert into student2 values(i,sname,sex); <<a>> loop exit; end loop; end loop;end;
------解决方案--------------------
建议你学习下 标签
- SQL code
declare sum_n number(5):=0;begin for i in 1..10 loop if mod(i,2)=0then goto a;elsesum_n:=sum_n+i; end if; dbms_output.put_line(sum_n); <<a>> begin continue; end a; end loop;end;