您的位置:首页 > 数据库

pl/sql 变量赋值

2016-06-28 23:05 281 查看
在PL/SQL编程中,变量赋值是一个值得注意的地方,它的语法如下:

variable  := expression ;

variable 是一个PL/SQL变量, expression是一个PL/SQL表达式. 

1 字符及数字运算特点 

  空值加数字仍是空值:NULL + <数字> = NULL 

  空值加(连接)字符,结果为字符:NULL || <字符串> = <字符串> 

2 BOOLEAN赋值 

  布尔值只有TRUE, FALSE及 NULL三个值。如: 

DECLARE
bDone BOOLEAN;
BEGIN
bDone :=FALSE;
WHILE NOT bDone LOOP
Null;
ENDLOOP;
END;


3 数据库赋值 

  数据库赋值是通过 SELECT语句来完成的,每次执行 SELECT语句就赋值一次,一般要求被赋值的变量与SELECT中的列名要一一对应。如:

  例: 
DECLARE
emp_id    emp.empno%TYPE :=7788;
emp_name  emp.ename%TYPE;
wages     emp.sal%TYPE;
BEGIN
SELECT ename, NVL(sal,0) + NVL(comm,0) INTO emp_name, wages
FROM emp WHERE empno = emp_id;
DBMS_OUTPUT.PUT_LINE(emp_name||'----'||to_char(wages));
END;


  提示:不能将SELECT语句中的列赋值给布尔变量。 

4 可转换的类型赋值 

CHAR转换为 NUMBER:

使用 TO_NUMBER函数来完成字符到数字的转换,如:

v_total := TO_NUMBER('100.0') + sal;

NUMBER转换为CHAR:

   使用 TO_CHAR函数可以实现数字到字符的转换,如:

v_comm := TO_CHAR('123.45') ||'元';

字符转换为日期:

使用 TO_DATE函数可以实现 字符到日期的转换,如:

v_date := TO_DATE('2001.07.03','yyyy.mm.dd');

日期转换为字符

使用 TO_CHAR函数可以实现日期到字符的转换,如:
v_to_day := TO_CHAR(SYSDATE,'yyyy.mm.dd hh24:mi:ss') ;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: