变量声明
declare
name varchar2(10);//声明变量
begin
name:=‘Tom’;对变量赋值,注意赋值方法
dbms_output.put_line(name);
end;
关于type属性,为了简便保持与字段的一致而使用
declre
empno number(4);
emp1 emp.empno%type;
.......
常用变量类型
number
varchar2
date
复杂的变量类型:
1.table
declare
type type_table_emp_no is table of emp.empno%type index by binary_integer;
empnoarry type_table_emp_no(新类型,类似数组)
begin
empnoarray(0):=1;
empnoarray(2):=2;
empnoarray(-1):=3;
dbms_output.put_line(empnoarray(0));
end;
Record
declare
tyepe type_record is record
(
no de.no%type,
name de.name%type,
....
);有点类似类的成员声明
tmp type_record 使用新类型
begin
tmp.no:=10;
tmp.name:='tom'
.....
dbms_output.put_line(tmp.no||' '||tmp.name);
end;
或者完全依照某个表来定义,这样当表的字段变化时,该record也跟着变化
declare
tmp de(表名)%rowtype;
begin
tmp.no:=10;
tmp.name:='tom'
.....
dbms_output.put_line(tmp.no||' '||tmp.name);
end;
异常
declare
num number :=0;
begin
num:=2/num;
dbms_output.put_line(num);
exception
when others then //when others 包含所有异常情况
dbms_output.put_line('error');
end;