PLSQL编程语言
/*
plSql编程语言 是在sql语句中加入处理过程的语句
条件判断 if..else 循环结构 for() while do while
自己定义变量处理逻辑
基本结构
declare
--声明的部分
--定义变量的部分
begin
--处理逻辑的代码块
end;
*/
--------简单的plSql示例
declare
--定义变量
v_n number(6) := 1;
v_s varchar2(10) :='s';
--新型变量
emp_ename emp.ename%type; --引用类型变量
emp_row emp%rowtype; --记录类型变量
begin
dbms_output.put_line('v_n===='||v_n);
dbms_output.put_line('v_s===='||v_s); --相当于java的system.out.println();
select ename into emp_ename from emp where empno=7369; --查询赋值使用关键字 into
select * into emp_row from emp where empno=7369;
dbms_output.put_line('emp_ename===='||emp_ename);
dbms_output.put_line('empno===='||emp_row.empno||'ename=='||emp_row.ename);
end;
/*
条件判断
if .. then ..
elsif .. then
else
...
end if;
*/
--使用条件表达式判断员工的工资 使用汉字输出
declare
emp_row emp%rowtype; --记录类型变量
begin
select * into emp_row from emp where empno=7369;
if emp_row.sal>3000 then
dbms_output.put_line('工资大于3000========'||emp_row.sal);
elsif emp_row.sal<1000 then
dbms_output.put_line('工资小于1000========='||emp_row.sal);
else
dbms_output.put_line('工资在1000和3000之间========'||emp_row.sal);
end if;
end;
/*
循环结构
loop
exit when 条件
end loop;
while 条件 loop
end loop;
for 变量 in 范围 loop
end loop;
*/
--使用循环语句输出 1-10的数字
declare
v_n number :=1;
begin
loop
exit when v_n>10 ;
dbms_output.put_line(v_n);
v_n:=v_n+1; --变量自增
end loop;
end;
-------------第二种方式
declare
v_n number :=1;
begin
while v_n<11 loop
dbms_output.put_line(v_n);
v_n:=v_n+1; --变量自增
end loop;
end;
---------------for循环-for(Customer c:list)
declare
begin
for i in 1..10 loop
dbms_output.put_line(i);
end loop;
end;