标签:
1 数据库赋值
数据库赋值是通过SELECT语句来完成的,每次执行SELECT语句就赋值一次,一般要求被赋值变量与SELECT中的列名要一一对应。
2 不能将SELECT语句中的列赋值给布尔变量
3 条件语句
IF 布尔表达式 THEN
PL/SQL 语句和SQL语句
END IF;
IF 布尔表达式 THEN
PL/SQL 语句和SQL语句
ELSE
其他语句
END IF;
IF 布尔表达式 THEN
PL/SQL 语句和SQL语句
ELSEIF 其它布尔表达式 THEN
其他语句
ELSEIF 其它布尔表达式 THEN
其他语句
END IF;
注意 :ELSEIF是一个完整的关键词 中间不能加空格
4
Case when ...then
有点像switch语句
Case 后面跟着一个变量和 when 后面的常量要同一个类型
要被赋值的变量写在case前面 并加上:=
5循环
使用循环输出1-100 (三种方式)
--使用循环语句打印1-100
--1 初始化条件 2循环体 3 循环条件 4迭代
Do-while
declare
--1
v_i number(5):=1;
begin
loop
--2
dbms_output.put_line(v_i);
--3
exit when v_i>=100;
--4
v_i:=v_i+1;
end loop;
end;
第二种方式while 循环
--使用循环语句打印1-100
--1 初始化条件 2循环体 3 循环条件 4迭代
declare
--1
v_i number(5):=1;
begin
while v_i<=100
loop dbms_output.put_line(v_i);
v_i:=v_i+1;
end loop;
end;
第三种方式 for循环
--使用循环语句打印1-100
--1 初始化条件 2循环体 3 循环条件 4迭代
begin
for c in 1..100 loop
dbms_output.put_line(c);
end loop;
end;
输出2-100的质数 两层循环加算法
declare
v_i number(3):=2;
v_j number(3):=2;
v_flag number(1):=1;
begin
while v_i<=100 loop
while v_j<=sqrt(v_i) loop
if mod(v_i,v_j)=0 then v_flag:=0;
end if;
v_j:=v_j+1;
end loop;
if v_flag=1 then dbms_output.put_line(v_i);
end if;
v_j:=2;
v_i:=v_i+1;
v_flag:=1;
end loop;
end;
6 goto
格式 goto label
在某个地方再定义一个 label
7exit
使用exit可以直接结束程序
1 数据库赋值
数据库赋值是通过SELECT语句来完成的,每次执行SELECT语句就赋值一次,一般要求被赋值变量与SELECT中的列名要一一对应。
2 不能将SELECT语句中的列赋值给布尔变量
3 条件语句
IF 布尔表达式 THEN
PL/SQL 语句和SQL语句
END IF;
IF 布尔表达式 THEN
PL/SQL 语句和SQL语句
ELSE
其他语句
END IF;
IF 布尔表达式 THEN
PL/SQL 语句和SQL语句
ELSEIF 其它布尔表达式 THEN
其他语句
ELSEIF 其它布尔表达式 THEN
其他语句
END IF;
注意 :ELSEIF是一个完整的关键词 中间不能加空格
4
Case when ...then
有点像switch语句
Case 后面跟着一个变量和 when 后面的常量要同一个类型
要被赋值的变量写在case前面 并加上:=
5循环
使用循环输出1-100 (三种方式)
--使用循环语句打印1-100
--1 初始化条件 2循环体 3 循环条件 4迭代
Do-while
declare
--1
v_i number(5):=1;
begin
loop
--2
dbms_output.put_line(v_i);
--3
exit when v_i>=100;
--4
v_i:=v_i+1;
end loop;
end;
第二种方式while 循环
--使用循环语句打印1-100
--1 初始化条件 2循环体 3 循环条件 4迭代
declare
--1
v_i number(5):=1;
begin
while v_i<=100
loop dbms_output.put_line(v_i);
v_i:=v_i+1;
end loop;
end;
第三种方式 for循环
--使用循环语句打印1-100
--1 初始化条件 2循环体 3 循环条件 4迭代
begin
for c in 1..100 loop
dbms_output.put_line(c);
end loop;
end;
输出2-100的质数 两层循环加算法
declare
v_i number(3):=2;
v_j number(3):=2;
v_flag number(1):=1;
begin
while v_i<=100 loop
while v_j<=sqrt(v_i) loop
if mod(v_i,v_j)=0 then v_flag:=0;
end if;
v_j:=v_j+1;
end loop;
if v_flag=1 then dbms_output.put_line(v_i);
end if;
v_j:=2;
v_i:=v_i+1;
v_flag:=1;
end loop;
end;
6 goto
格式 goto label
在某个地方再定义一个 label
7exit
使用exit可以直接结束程序
标签:
原文地址:http://www.cnblogs.com/HJL085/p/5724270.html