在程序中定义变量、常量和参数时,则必须要为它们指定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