详细讲述PLSQL的书写及语法
摘要
//简要说明该文档内容
SQL是用来访问关系型数据库一种通用语言 其执行特点是非过程化 即不用指明执行的具体方法和途径 而是简单的调用相应语句来直接取得结果即可 PL/SQL是一种过程化语言 因此可以用来实现比较复杂的业务逻辑 而本篇文章主要讲述PLSQL的书写及语法
内容
//可自行增加小分类 等
PLSQL语法
程序结构
PL/SQL程序都是以块(block)为基本单位 整个PL/SQL块分三部分 声明部分(用declare开头) 执行部分(以 begin开头)和异常处理部分(以exception开头) 其中执行部分是必须的 其他两个部分可选 无论PL/SQL程序段的代码量有多大 其基本结构就是由这三部分组成 而且每条语句均由分号隔开
/*声明部分 以declare开头*/ DECLARE declare statement /*执行部分 以begin开头 以end结束*/ BEGIN execute statement /*异常处理部分 以exception开始*/ EXCEPTION WHEN exceptioncase THEN Exception handle END;
例子
/*声明部分 以declare开头*/ DECLARE v_job NUMBER( ); /*执行部分 以begin开头*/ BEGIN DELETE FROM employee; INSERT INTO employee (depno job ) VALUES ( ); SELECT job INTO v_job FROM employee WHERE depno = ; dbms_output PUT_LINE(v_job); /*异常处理部分 以exception开始*/ EXCEPTION WHEN no_data_found THEN dbms_output PUT_LINE( No data ); END;
执行结果
数据类型
PL/SQL主要用于数据库编程 所以其所有数据类型跟oracle数据库里的字段类型是一一对应的 大体分为数字型 布尔型 字符型和日期型
控制结构
PL/SQL程序段中有三种程序结构 条件结构 循环结构和顺序结构
a) 条件结构
IF condition THEN statement ELSEIF conditon THEN statement ELSE statementelse END IF ;
b) 循环结构
三种循环结构
简单循环(也称作无限循环) LOOP Loopstatement END LOOP ;
WHILE 循环 WHILE condition LOOP loopstatement END LOOP ;
数字FOR循环 FOR variable IN low_bound upper_bound LOOP loopstatement END LOOP ;
通常 如果你总是希望循环主体执行至少一次 那么你就应当使用一个简单循环 如果你希望在第一次运行循环主体之前检查该条件 则应使用 WHILE 循环 当你计划通过IN子句中指定的每个值(整数或记录)进行迭代时 则应当使用FOR循环
c) 顺序结构
lishixinzhi/Article/program/Oracle/201311/17606