变量
数值变量声明语法
variable_name NUMBER(P[,S]) := VALUE;
例子
number1 NUMBER(2); --声明变量number1,长度为2
number2 NUMBER(2) := 50; --声明变量number2,长度为2,默认值为50
字符变量声明语法
variable_name VARCHAR2(L) := 'Text';
例子
str1 VARCHAR2(256) = "hello";
时间变量声明语法
variable_name DATE := '01-Jan-2005';
声明和某一列相同类型的变量的语法
Variable_name Table_name.Column_name%type;
例子
假设有一个表T,它有两列,字段名分别为a,b
则声明a字段类型的变量x的语句为:
x T.a%type
声明b字段类型的变量y的语句为
y T.b%type;
声明行类型变量语法
假设有一个表T,它有两列,字段名分别为a,b
则表T的行类型变量声明的语句为
r T%rowtype
可以通过r.a访问a字段的值,r.b访问b字段的值
RECORD定义语法
TYPE record_name IS RECORD --相当于C里面的结构体
(field1 TYPE1, --相当于结构体里面的变量
field2 TYPE2);
例子
TYPE T_type IS RECORD --定义T_type为表T的一条记录的类型
(a, T.a%type,
b, T.b%type);
rec T_type; --定一个变量,可以用来存储表T的一条记录
用rec.a,rec.b来访问记录的每个字段