您的位置:首页 > 数据库

PL/SQL(二):变量

2013-12-03 12:13 267 查看

变量

标识符定义



PL/SQL程序设计中的标识符定义与SQL的标识符定义的要求相同。要求和限制有:

(1)不能超过30个字符。

(2)首字符必须为字母。

(3)不区分大小写。

(4)不能使用SQL保留字。

(5)对标识符的命名最好遵循实际项目中相关命名规范



声明语法

PL/SQL中出现的变量在DECLARE部分定义,

语法如下:变量名[CONSTANT] 数据类型[NOT NULL][ := | DEFAULT PL/SQL表达式]

常量:[CONSTANT]必须初始化

数据类型




PL/SQL
出现的所有变量和常量都需要指定一个数据类型。下面介绍一些常用的数据类型,有标量类型、参考类型、
LOB
类型和用户自定义
类型



标量类型

①数值型

NUMBER [(precision, scale)]:可存储整数或实数值

②字符型

CHAR[(maximum_length)] :描述定长的字符串,如果实际值不够定义的长度,系统将以空格填充。在PL/SQL中最大长度的是32767,长度缺省值为1。

③日期型

常用的日期类型为DATE。日期默认格式为DD-MON-YY,分别对应日、月、年。

④布尔型

存储逻辑值TRUE或FALSE

(2)参考类型

参考类型分为两种,%TYPE和%ROWTYPE。

①%TYPE类型

定义一个变量,其数据类型可以与已经定义的某个数据变量的类型相同,或者与数据库表的某个列的数据类型相同,这时可以使用%TYPE。

②%ROWTYPE类型

定义一个变量的类型参照自基本表或视图中记录的类型、或游标的结构类型,这时可以使用%ROWTYPE

语法变量赋值

常量

PL/SQL
程序中可以通过两种方式给变量赋值


(1)直接赋值



变量名
:=
常量或表达式
;

例如:
v_num NUMBER:=3;



(2)通过SELECT..INTO赋值



SELECT
字段
INTO
变量名

例如:
SELECTsname,age INTO v_sname, v_age

FROM student

WHERE sno=‘20120001’;



任务3

-编写一个PL/SQL程序,输出学号为20120006的学生姓名和出生年份。

DECLARE
v_sname student.sname%TYPE;
v_birth NUMBER;
BEGIN
SELECT sname,2012-age into v_sname,v_birth
FROM student WHERE sno='20120006';
DBMS_OUTPUT.PUT_LINE('学号为2012006的姓名:'||v_sname||' 出生年月:'||v_birth);
END;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: