PL/SQL 编程- 1 -PL/SQL 编程pl/sql(procedurallanguage/sql)是 Oracle在标准的 sql语言上的扩展。pl/sql不仅允许嵌入式 sql语言,还可以定义变量和常量,允许使用条件语句和循环语句,允许使用例外处理各种错误。这样使得他的功能变的更强大。缺点是移植性不好。编写一个存储过程,向表中添加数据。1. createtablemytest(namevarchar2(30),passwdvarchar2(30));2.createorreplaceprocedurexxc_pro1isbegininsertintomytestvalues('小红','m123');end;3.调用过程exec过程名(参数 1,参数 2…)或 call过程名参数 1,参数 2…)1execxxc_pro1;或者是2 callxxc_pro1;pl/sql可以做什么?块:包括过程、函数、触发器、包。编写规范:1. 注释-- :单行注释eg:select* fromempwhereempno=7788;--取得员工信息/*……*/多行注释2.表示符号(变量)的命名规范:1当定义变量时,建议用 v_作为前缀:v_ename2 当定义常量时,建议用 c_作为前缀:c_rate3 当定义游标时,建议用_cursor作为后缀:emp_cursor4 当定义例外时,建议用 e_作为前缀:e_error块(block)是 pl/sql的今本程序单元,编写 pl/sql程序实际上就是在编写 pl/sql块;pl/sql块由三部分组成:定义部分,执行部分,例外处理部分。declare-- 可选部分/*定义部分:定义常量,变量,游标,例外,复杂数据类型*/begin-- 必选部分/*执行部分:要执行的 pl/sql语句和 sql语句*/exception-- 可选部分/*例外处理部分:处理运行的各种错误*/实例 1:只包含执行部分的 pl/sql块SQL>setserveroutputon -- 打开输出SQL>begin2 dbms_output.put_line('hello');3 end;4 /说明:dbms_output是 oracle提供的包,该包包含一些过程,put_line就是其中之一。实例 2:包含定义部分和执行部分SQL>declare2 v_enamevarchar2(5);3 begin4 selectenameintov_enamefromempwhereempno= &no;PL/SQL 编程- 2 -5 dbms_output.put_line('雇员名'||v_ename);6 end;7 /说明:&:从控制台输入变量,会弹出一个对话框。实例 3.同时输出雇员名和工资SQL>declare2v_enamevarchar2(20);3 v_salnumber(10,2);4 begin5 selectename,salintov_ename,v_salfromempwhereempno=&no;6 dbms_output.put_line('雇员名:'||v_ename||'工资:'||v_sal);7 end;8 /包含定义,执行,和例外处理的 pl/sql块。实例 4.当输入的员工号不存在时SQL>declare2v_enamevarchar2(20);3 v_salnumbe...