PLSQL语法深入浅出

时间:2024-09-06 11:06:50
一:PLSQL概览:PLSQL 是Oracle公司在SQL基础上进行扩展而成的一种过程语言。PLSQL提供了典型的高级语言特 性,包括封装,例外处理机制,信息隐藏,面向对象等;并把新的编程思想带到了数据库服务器和工具 集中。
与Java,  C#相比,PLSQL的优势是:SQL语言可以直接写到PLSQL的“块”中或者是PLSQL的过程、 函数中。没有必要向java那样先创建Statement对象来执行SQL;  这使得PLSQL成为很强大的事务处理语 言,即:使用SQL来处理数据,使用控制结构来处理业务逻辑。
二:PLSQL块概念:PLSQL是一种类PASCAL语言,每一段程序都是由Block 组成的
DECLARE(Optional)
    Variables, cursors, user-defined exceptions
BEGIN(Mandatory)
    SQL statements
    PL/SQL statements
EXCEPTION(Optional)
    Actions to perform when errors occur
END;(Mandatory)
三:PLSQL变量类型:
1、系统内置的常规简单变量类型
2、用户自定义复杂变量类型:比如记录类型
3、引用类型:保存一个指针
4、大对象类型(LOB):保存了一个指向大对象的地址
四:常用函数介绍:
DBMS_OUTPUT.PUT_LINE ();
输出,调试时输出中间变量的值
SELECT    INTO  语句:
用于把从数据库查询出内容存入变量
INSERT、UPDATE、DELETE 、MERGE语句:
在PLSQL中执行这些SQL语句和直接执行这些语句差不多, 只不过可以在SQL语句中使用PLSQL声明的变量;
五:PLSQL的控制语句:
①:条件语句
IF condition
THEN statements;
[ELSIF condition
THEN statements;]
[ELSE statements;]
END IF;
CASE selector
WHEN expression1
THEN result1
WHEN expression2
THEN result2 ...
WHEN expressionN
THEN resultN
[ELSE resultN+1;]
END case;
②:循环语句
LOOP                     
statement1; . . . EXIT [WHEN condition];
END LOOP;
WHILE
condition
LOOP
statement1;
statement2; . . .
END LOOP;
FOR counter IN [REVERSE]
lower_bound..upper_bound
LOOP 
statement1; statement2; . . .
END LOOP;