时间:2021-07-01 10:21:17 帮助过:3人阅读
name emp.ename%TYPE,
salary emp.sal%TYPE);
emp emp_record_type;
BEGIN
SELECT ename,sal,job into emp
FROM emp WHERE empno=7788;
dbms_output.put_line(‘雇员名:‘ || emp .name);
END;
b. 索引表类型 PL/SQL索引表类似Collection接口,或者看成是一个1维数组也可以。 不连续 索引可为负数 动态增长 语法:type xx is table of 类型 index by 整型 c. 嵌套表类型 d. 变长数组类型 e. 集合类型 6. 引用变量 1) 引用变量 引用变量是指用于存放数据地址(指针)的变量。 2) 好处 通过使用引用变量,可以使得应用程序共享相同对象,从而降低占用空间。 3) 引用变量类型 a. REF CURSOR:引用游标类型 先定义游标变量,再定义该游标使用的select语句。具体将在后面游标讲解更深入讲解。 b. REF obj_type:引用对象类型 编写对象类型应用时,为了共享相同对象,可以使用REF引用对象类型,REF实际是指向对象实例的指针。7. LOB变量
1) LOB变量 LOB变量是指用于存储大批量数据的变量。 2) 分类 a. 内部LOB:存储在数据库中,并且支持事务操作(提交、回退、保存点)。 CLOB:存储大批量字符数据(指定字符集) NCLOB:存储大批量字符数据 (所有字符集) BLOB:存储大批量二进制数据 b. 外部LOB:只有一种类型,该类型的数据被存储在操作系统文件中,并且不支持事务操作。 BFILE:存储指向操作系统文件的指针8. 使用SQL*Plus绑定变量
a. 当在SQL*Plus中与PL/SQL块之间进行数据交互时,需要使用SQL*Plus绑定变量来完成。 b. 当在PL/SQL中引用非PL/SQL变量时,必须要在非PL/SQL变量前加冒号(“:”)。SQL> var name varchar2(10);
SQL> BEGIN
2 SELECT ename INTO :name FROM emp
3 WHERE empno = 7788;
4 end;
5 /
SQL> print name;
name
---------
SCOTT
9. PL/SQL词汇单元
当编写PL/SQL块时,每个PL/SQL块都包含多行代码,而每行代码又是由多个合法单元组成的,这些合法单元被称为词汇单元。
1) PL/SQL词汇单元分类 a. 标识符 通过使用标识符,可以定义常量、变量、异常、显式游标、游标变量、参数、子程序以及包的名称。 示例:declare v_name emp.ename%type; b. 字面量 写在代码各种具体的数值,如数字、字符、字符串、日期值或布尔值 。 示例: v_name := ‘lovo‘; c. 分隔符 分隔符是指具有特定含义的单个符号(+、-、*、/)或组合符号( := 、>=)。 示例: a := 10 + 20 ; 3) 注释 a. 单行注释 --单行注释 b. 多行注释 /*多行注释*/ 示例DECLARE
--定义v_sal变量
v_sal NUMBER(6,2);
BEGIN
/*
给变量赋值,
然后打印此变量
*/
v_sal := 1000;
dbms_output.put_line(v_sal);
END;
10.PL/SQL代码编写规则
1) 好处 使用适当的编写规则,可以提高代码的可读性,降低程序维护难度。 2) 规则 A. 标识符命名规则 a. v_变量名 定义变量 b. e_变量名 定义异常 c. ……. B. 大小写规则 代码不区别大小写,但建议关键字大写。 C. 代码缩进 D. 嵌套块和变量范围 外部块能够访问内部块的变量,反之则不能。PL/SQL编程基础
标签: