PL/SQL;
过程; 符号; 变量; PL/SQL块; 输出; 异常;
PL/SQL 是过程语言(Procedural Language)与结构化查询语言(SQL)结合而成的编程语言
PL/SQL 是对 SQL 的扩展,sql的执行时每次都要写操作的语句发给数据库 不利于程序的安全,pl/sql是将操作程序的语句放在数据库里面 应用程序只需要发用执行的命令
一, PL/SQL块;是程序的执行标志
declare --声明 begin--开始执行 exception--异常 end;--结束执行
二 ,过程:将操作程序的语句放在数据库里面 应用程序只需要发用执行的命令
创建过程;
create or replace procedure pro_1; --procedure过程的关键字 +关键字的别名
PL/SQL和过程的应用;
查询emp表中的ename;
create or replace procedure pro_1 is--定义过程 begin select ename from emp; end;
在PL/SQL工具执行的时候需要在后面按下 / 再按回车;程序才会执行
打开程序的输入输出;
set serveroutput on/off打开/关闭
调用过程;
exec 过程名
exec pro_1;调用查询job的过程;
三;符号;
:= 赋值操作符 || 连接操作符 -- 单行注释 /**/ 多行注释 <<>> 标签分隔符 .. 范围操作符 ** 求幂操作符
四;变量的声明;
变量名 数据类型;
declare --声明变量 v_name varchar2(30); v_empno number(10);
五;输出;
dnms_output.put_line('姓名:'||v_name);
符号,变量的声明,输出的简单应用初步理解;
--查询语句 declare --申明变量 v_name varchar2(30); v_empno number(20); begin--开始查询 select ename into v_name from emp where empno=7369; --输出,||连接符号 dbms_output.put_line('姓名:'||v_name); end;
查询语句,带提示的;
--查询语句.设置提示输入的 declare --声明变量 v_ename varchar2(30); v_sal number(10); begin --开始查询 select ename into v_ename from emp where empno=&aa; dbms_output.put_line('姓名:'||v_ename); end;
六;异常
异常有两种类型: 预定义异常 - 当 PL/SQL 程序违反 Oracle 规则或超越系统限制时隐式引发 用户定义异常 - 用户可以在 PL/SQL 块的声明部分定义异常,自定义的异常通过 RAISE 语句显式引发
oracle自定义的异常;
access_into_null 在未初化对象时出现 case_not_found 在CASE语句中的选项与用户输入的数据不匹配时出现 collection_is_null 在给尚未初始化的表或数组赋值时出现 cursor_already_open 在用户试图打开已经打开的游标时出现 dup_val_on_index 在用户试图将重复的值存在使用唯一索引的数据库列中时出现 invalid_cursor 在执行非法游标运算(如打开一个尚未打开的游标)时出现 invalid_number 在将字符串转换为数字时出现 login_denied 在输入的用户名或密码无效时出现 no_data_found 在表中不存在的请求的行时出现,此外,当程序引用已经删除的元素时 storage_error 在内存损坏或PL/SQL耗尽内存时出现 too_many_rows 在执行SELECT INTO语句后返回多行时出现 value_error 在产生大小限制错误时出现 zero_divide 以零作除数时出现 Others针对所有异常
异常的综合应用;
根据提示框输入的查询;
--查询语句.设置提示输入的 declare --声明变量 v_ename varchar2(30); v_sal number(10); begin --开始查询 select ename into v_ename from emp where empno=&aa; dbms_output.put_line('姓名:'||v_ename); end;
在根据提示的时候如果用户输入某个数字在表中不存在,那么就会执行不成功,此时我们应该像JAVA中一样把异常捕获,如果出现异常就提示不存在这个人
declare --声明变量 v_ename varchar2(30); v_sal number(10); begin --开始查询 select ename into v_ename from emp where empno=&aa; dbms_output.put_line('姓名:'||v_ename); exception when no_data_found then dbms_output.put_line('这个人不存在'); end;
上述的PL/SQL程序汇总只能一次性的查询,不能重复的提示用户查询所需要的数据,过程可以解决这个问题;
在声明过程的时候就需要创建变量:
create procedure pro_1(v_empno number(10)) is
创建可以重复提示用户输入的程序;
create or replace procedure pro_2(v_empno varchar2) is v_ename varchar2(30); begin select ename into v_ename from emp where empno=v_empno; dbms_output.put_line('姓名:'||v_ename); exception when no_data_found then dbms_output.put_line('不存在这个人'); end;
在执行前先set serveroutput on 打开输入输出
使用exec pro_1;可以不断的查找数据
相关推荐
Oracle PL/SQL实例编程 Oracle PL/SQL实例编程 Oracle PL/SQL实例编程
PL/SQL 程序设计 本章主要重点: PL/SQL概述 PL/SQL块结构 PL/SQL流程 运算符和表达式 游标 异常处理 数据库存储过程和函数 包 触发器
PL/SQL 编程基础知识详解,PL/SQL 包含过程化语句和SQL语句数据操作和查询语句被包含在PL/SQL代码的程序单元中(PL/SQL块),经过逻辑判断、循环等操作完成复杂的功能或者计算.。
PL/SQL过程编程各种的异常 例如not_data_found 记录数为空
pl/sql例题代码pl/sql例题代码pl/sql例题代码
《Oracle PL/SQL程序设计(第5版)(套装上下册)》基于Oracle数据库11g,从PL/SQL编程、PL/SQL程序结构、PL/SQL程序数据、PL/SQL中的SQL、PL/SQL应用构建、高级PL/SQL主题这6个方面详细系统地讨论了PL/SQL以及如何...
pl/sql developer11.0下载 pl/sql developer11.0下载 pl/sql developer11.0下载
如今,有越来越多的商业逻辑和应用逻辑转向了Oracle Server,因此,PL/SQL编程也成了整个开发过程的一个重要组成部分。PL/SQL Developer侧重于易用性、代码品质和生产力,充分发挥Oracle应用程序开发过程中的主要...
《Oracle PL/SQL程序设计(第5版)》基于Oracle数据库11g,从PL/SQL编程、PL/SQL程序结构、PL/SQL程序数据、PL/SQL中的SQL、PL/SQL应用构建、高级PL/SQL主题这6个方面详细系统地讨论了PL/SQL以及如何有效地使用它。...
ORACLE PL/SQL编程之八ORACLE PL/SQL编程之八ORACLE PL/SQL编程之八ORACLE PL/SQL编程之八
PL/SQL, Oracle's procedural extension of SQL, is an advanced fourth-generation programming language (4GL). It offers modern features such as data encapsulation, overloading, collection types, ...
PL/SQL是Oracle对标准数据库语言的扩展,Oracle公司已经将PL/SQL整合到Oracle 服务器和其他工具中了,近几年中更多的开发人员和DBA开始使用PL/SQL,本教程将以循速渐进的方式讲述PL/SQL基础语法,结构和组件、以及...
本书是专门为oracle开发人员而提供的编程指南 通过学习本书 读者不仅可以掌握编写sql语句和pl/sql块的基础知识 而且还可以掌握sql高级特征 正则表达式 flashback查询 merge语句 sql:1999连接 和pl/sql高级特征 ...
在普通SQL语句的使用上增加了编程语言的特点,所以PL/SQL把数据操作和查询语句组织在PL/SQL代码的过程性单元中,通过逻辑判断、循环等操作实现复杂的功能或者计算。PL/SQL免安装版,点击即用,非常方便!
PL/SOL是Oracle特有的编程语言,它不仅具有过程编程语言的基本特征(循环、条件分支等),而且还具有对象编程语言的高级特征(重载、继承等)。 本书是专门为Oracle应用开发人员提供的编程指南。通过学习本书,读者不仅...
PL/SQL developer 12.07 注册码 可以使用,不错,自己用过了,分享给大家
pl/sql 下载pl/sql 下载pl/sql 下载pl/sql 下载pl/sql 下载pl/sql 下载pl/sql 下载pl/sql 下载pl/sql 下载pl/sql 下载pl/sql 下载pl/sql 下载pl/sql 下载pl/sql 下载pl/sql 下载pl/sql 下载pl/sql 下载pl/sql 下载pl...
一个对数据库的操作工具PL/SQL,能够对ORACLE\SQL进行很好的帮助操作!
最新pl/sql7.0中文手册
1、PL/SQL简介 2、PL/SQL基础 3、记录和表 4、在PL/SQL中使用SQL 5、内置SQL函数 6、游标 7、过程和函数 ...