在程序中定义变量、常量和参数时,则必须要为它们指定PL/SQL数据类型。在编写PL/SQL程序时,可以使用标量(Scalar)类型、复合(Composite)类型、参照(Reference)类型和LOB(Large
Object)类型等四种类型。
在PL/SQL中用的最多的就是标量变量,当定义标量变量时,必须要指定标题数据类型,标题数据类型一般包括:数字类型,字符类型,日期类型,布尔类型,每种类型又包含相应的子类,例如NUMBER类型包含INTEGER,POSITIVE等子类型。
一、常用标量类型
1.VARCHAR2(N)
2.CHAR(N)
3.NUMBER(P,S)
4.DATE
5.TIMESTAMP
该数据类型是9i时增加的,它也用于定义日期和时间数据。给它赋值的方法与给DATE变量赋值的方法完全相同。但当显示时它不仅会显示日期,还会显示时间和上下午标记。
6.LONG和LONG
RAW
7.BOOLEAN
8.BINARY_INTEGER
9.BINARY_FLOAT
和 BINARY DOUBLE 这两个类型是ORACLE10新增加的 用的时候不是很多
二、使用标量变量
在PL/SQL中为变量赋值不同于其他编程语言,必须要在等号之前加上冒号( := )。
eg:
DECLARE
x NUMBER ;
y NUMBER ;
--7:输出几位数,3为四舍五入三位数(正:小数点右边三位数,负:小数点左边三位数)
z number(7,3);
codeid
number;
BEGIN
x:=200.0088;
y:=x+10;
z:=1000.0088;
dbms_output.put_line(x);
dbms_output.put_line('y='||y);
dbms_output.put_line('z='||z);
--给变量codeid赋值
SELECT SUM(user_id)
INTO codeid FROM hr_employee hr;
dbms_output.put_line('codeid='||codeid);
codeid:=codeid*100;
dbms_output.put_line('codeid='||codeid);
end;
打印结果,如下:
x=200.0088
y=210.0088
z=1000.009
codeid=1045
codeid=104500