Oracle PL/SQL 学习笔记 (2)

来源:互联网 发布:流行音乐 知乎 编辑:程序博客网 时间:2024/06/06 08:36
§ 2.4.5 Bind 变量
绑定变量是在主机环境中定义的变量。在 PL/SQL 程序中可以使用绑定变量作为他们 将
要使用的其它变量。为了在 PL/SQL 环境中声明绑定变量,使用命令 VARIABLE 。
例如:
VARIABLE return_code NUMBER
VARIABLE return_msg VARCHAR2(20)
可以通过 SQL*Plus 命令中的 PRINT 显示绑定变量的值。例如:
PRINT return_code
PRINT return_msg
使用样例:
VARIABLE result NUMBER
BEGIN
SELECT (sal*12)+nvl(comm, 0) INTO :result FROM emp WHERE empno=7788;
END;
PRINT result

§ 2.4.6 INDEX BY TABLES
包括两个基本成分 :
.数据处理类型为 BINARY_INTEGER 主键 ;
.标量或记录数据类型的列.
TYPE type_name IS TABLE OF
{column_type | variable%TYPE | table.column%TYPE } [NOT NULL] |
table%ROWTYPE
[ INDEX BY BINARY_INTEGER];



样例:
 DECLARE
TYPE dept_table_type IS TABLE OF
dept%ROWTYPE INDEX BY BINARY_INTEGER;
my_dname_table dept_table_type;
v_count number(2) :=4;
BEGIN
FOR int IN 1 .. v_count LOOP
SELECT * INTO my_dname_table(int) FROM dept WHERE deptno=int*10;
END LOOP;
FOR int IN my_dname_table.FIRST .. my_dname_table.LAST LOOP
DBMS_OUTPUT.PUT_LINE( ‘ Department number: ‘ ||my_dname_table(int).deptno);
DBMS_OUTPUT.PUT_LINE( ‘ Department name: ‘ || my_dname_table(int).dname);
END LOOP;
END;
样例分析:





在Pl/SQl 中,可以进行变量类型的转换,常见的类型转换有以下几种:

 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') ;

§ 2 . 8 注释
在 PL/SQL 里,可以使用两种符号来写注释,即:
 使用双 ‘ ­ ‘ ( 减号 ) 加注释
PL/SQL 允许用 – 来写注释,它的作用范围是只能在一行有效。如:
V_Sal NUMBER(12,2); ­­ 工资变量。
 使用 /* */ 来加一行或多行注释,如:
/***********************************************/
/* 文件名: statistcs_sal.sql */
/***********************************************/
提示:被解释存放在数据库中的 PL/SQL 程序,一般系统自动将程序头部的注释去掉。 只有在 PROCEDURE 之后的注释才被保留;另外程序中的空行也自动被去掉。

原创粉丝点击