第九章 PL/SQL基础 主讲内容:PL/SQL程序块、常量变量的使 用、条件语句、循环语句等;
第九章 PL/SQL基础 主讲内容:PL/SQL程序块、常量变量的使 用、条件语句、循环语句等;
ORACL∈ 00本节课内容 一.PL/SQL概述 二.P/SQL程序结构 三.异常处理 第3页
本节课内容 一.PL/SQL 概述 二.PL/SQL程序结构 三.异常处理 第 3 页
ORACL∈ 00-.PL/SQL概述 PL/SQL( Procedure Language/SQL)是 Oracle在数据库中引 入的一种过程化编程语言,代表面向过程化的语言与SQL 语言的结 ·PL/SQL构建于SQL之上,它是在SQL语言中扩充了面向过程 语言中使用的程序结构,如: 块结构、变量和类型、条件逻辑、循环 一游标,其中保存着查询返回的结果 过程、函数、包 第4页
一 . PL/SQL 概述 • PL/SQL(P d roce ure L /SQL anguage/SQL)是O l rac e在数据库中引 入的一种过程化编程语言,代表面向过程化的语言与SQL 语言的结合; • PL/SQL构建于SQL之上,它是在SQL语言中扩充了面向过程 语言中使用的程序结构,如: – 块结构、变量和类型、条件逻辑、循环 – 游标,其中保存着查询返回的结果 – 过程、函数、包 第 4 页
ORACL∈ ·例1,假设要在数据库中修改一个学生的记录,如果没有该 学生的记录,则为该学生创建一个新的记录,使用PL/SQL的 程序代码可以实现要求,如 DECLARE /*定义变量类型*/ v sname varchar2(8):=张三’; v newname varchar2(8):=张山’ BEGIN UPDATE student /*更新学生表* SET sname=v newname WHERE sname=v sname: 第5页
• 例1,假设要在数据库中修改一个学生的记录,如果没有该 学生的记录,则为该学生创建一个新的记录,使用PL/SQL的 程序代码可以实现要求,如: DECLARE /*定义变量类型*/ v _ sname varchar2( ) 8 :=‘张三’ ; v_newsname varchar2(8):=‘张山’ ; BEGIN UPDATE student /*更新学生表*/ SET sname= v newsname v _ newsname WHERE sname= v_sname; 第 5 页
ORACL∈ /检查记录是否存在,若不存在就插入记录*/ IF SQL%NOTFOUND THEN INSERT INTO student (sno, sname VALUES(student sequence nextval, v newname END IF: END: 第6页
/*检查记录是否存在,若不存在就插入记录*/ IF SQL%NOTFOUND THEN INSERT INTO student student (sno,sname) VALUES(student_sequence.nextval, v_newsname); END IF; END; / 第 6 页