Oracle笔记 八、PL/SQL跳转/判断/循环语句块
--goto跳转语句
--在goto 后,跳转到相应的语句,然后执行该语句和后面所有语句
begin
dbms_output.put_line('goto开始了');
goto c;
--不被执行
dbms_output.put_line('goto');
dbms_output.put_line('goto');
dbms_output.put_line('goto');
dbms_output.put_line('goto');
<<a>>
dbms_output.put_line('goto aaa');
<<b>>
dbms_output.put_line('goto bbb');
<<c>>
dbms_output.put_line('goto ccc');
end;
--PL/SQL中的sql和rowcount属性:sql代表最近执行的sql语句,rowcount代表最近执行的sql语句影响的行数
declare
vCount number;
vDeptno dept2.deptno%type := 10;
begin
--select count(*) into vCount from dept2;
--update dept2 set dname = dname || '~.~' where deptno = vDeptno;
--delete from dept2 where deptno = 40;
insert into dept2 select * from dept;
dbms_output.put_line('count:' || vCount);
dbms_output.put_line(sql%rowcount || '行受影响');
end;
--PL/SQL执行sql语句
begin
execute immediate 'create table temp as select * from dept';
end;
--动态sql,把sql语句放到变量中并传递参数
declare
sqlstr varchar2(100);
begin
sqlstr := 'insert into scott.dept values(12, :1, :abc)';
--变量是按照占位符顺序插入的
execute immediate sqlstr using '教务部', '武汉';
end;
select * from scott.dept;
--动态sql,把查询结果赋值给变量
declare
dept_row_data scott.dept%rowtype;
sqlstr varchar2(100);
begin
sqlstr := 'select * from scott.dept where deptno = 11';
execute immediate sqlstr into dept_row_data;
dbms_output.put_line(dept_row_data.deptno);
end;
--if 语句
--select * from emp;
declare
vSal emp.sal%type;
begin
select sal into vSal from emp where empno = 7566;
if (vSal < 1200) then
dbms_output.put_line('小于1200');
elsif (vSal < 2000) then
dbms_output.put_line('小于2000');
else
dbms_output.put_line('大于2000');
end if;
end;
--loop循环
declare
i binary_integer := 10;
begin
loop
dbms_output.put_line(i);
i := i - 1;
exit when(i < 1);
end loop;
end;
--while循环
declare
i binary_integer := 1;
begin
while i < 11 loop
dbms_output.put_line(i);
i := i + 1;
end loop;
end;
--for 循环
begin
for i in 1..10 loop
dbms_output.put_line(i);
end loop;
for i in reverse 1..10 loop
dbms_output.put_line(i);
end loop;
end;
转载于:https://www.cnblogs.com/javaTest/archive/2011/05/03/2589344.html
Oracle笔记 八、PL/SQL跳转/判断/循环语句块相关推荐
- oracle笔记一(sql语句方面)
oracle笔记一(sql语句方面) 一.sql语句 --================================================ 1.增加主键 alter table ...
- Oracle Study之--PL/SQL Developer软件错误
Oracle Study之--PL/SQL Developer软件错误 博文在51cto和CSDN同时开通 系统环境: 操作系统: Windows XP(64) 软件: PL/SQ ...
- 每周一书《Oracle 12 c PL(SQL)程序设计终极指南》
本周为大家送出的书是<Oracle 12 c PL(SQL)程序设计终极指南>,此书由机械工业出版社出版, 孙风栋,王澜,郭晓惠 著. 内容简介: <Oracle 12c PL/SQ ...
- 【学亮IT手记】oracle远程连接工具PL/SQL Developer的安装使用教程
[学亮IT手记]oracle远程连接工具PL/SQL Developer的安装使用教程 客户端远程连接oracle,可以使用oracle自带的连接工具sqlplus,instanceclient_12 ...
- Windows 7 下安装 Oracle 数据库和 PL/SQL Developer
win7下无论是32bits还是64bits,建议只安装oracle 11g 32bits,然后直接安装pl/sql developer,不需要额外的配置,就可以通过pl/sql developer来 ...
- 免安装Oracle客户端使用PL/SQL连接Oracle
免安装Oracle客户端使用PL/SQL连接Oracle 大家都知道,用PL/SQL连接Oracle,是需要安装Oracle客户端软件的.有没要想过不安装Oracle客户端直接连接Orac ...
- Oracle如何使用PL/SQL调试存储过程
Oracle如何使用PL/SQL调试存储过程 PL/SQL中提供了[调试存储过程]的功能,可以完成存储过程的预编译与测试. 点击要调试的存储过程,右键选择TEST 如果需要查看变量,当然调试都需要.在 ...
- Oracle实验五 PL/SQL编程
Oracle实验五 PL/SQL编程 [实验目的] 熟悉PL/SQL的数据类型和书写规则 熟悉控制结构和游标的使用 编写和运行函数.过程和触发器 [实验内容] 编写脚本文件,调试运行脚本文件,并记录结 ...
- oracle 作业调度里pl/sql怎么写,PL/SQL实现Oracle数据库任务调度
PL/SQL实现Oracle数据库任务调度 PL/SQL实现Oracle数据库任务调度 正在看的ORACLE教程是:PL/SQL实现Oracle数据库任务调度.摘要:本文主要就数据库恢复与系统任务的调 ...
最新文章
- How to configure cross-stack EtherChannel on Cisco Catalyst 3750 switches
- 已知三角形三边长怎么求面积_已知三角形三边求面积的公式——海伦公式
- How to determine if SAP CRM UI is extensible
- SharedSDK微信分享不成功,分享之后没有反应
- java和C++有什么异同
- 河北工程大学c语言期末考试及答案,河北工程大学之数据结构c语言版期末考试复习试题...
- 怎样将Redis以本地服务方式进行启动?
- 给CentOS添加第三方源(RPMForge源)
- mysql查处所有表中的新数据,mysql – 对所有表执行查询并在新表中填入数据
- JVM对象分配和GC分布【JVM】
- 应用之星教你制作高下载量的App
- 【链表】 链表的基本概念及分类
- 【分享】北京社保查询API
- webpack的基本使用03
- Linux 内核启动过程--head.S(arch/xxx/kernel下的)
- crm登录功能实现记住我
- 组件扫描器及spring头部配置文件的讲解
- Python爬取 美剧《纸牌屋》字幕(可可英语)---BeautifulSoup版
- spring自动装配原理
- SAP MM模块常用的标准报表
热门文章
- Linux通过kaggle api下载kaggle数据集
- Linux大文件切割命令split
- 机器学习知识点(二十八)Beta分布和Dirichlet分布理解
- 插入DLL和挂接API——Windows核心编程学习手札之二十二
- java调用net_Java调用C#.net开发的WebService
- delimiter mysql报错_MySql中的DELIMITER错误
- Spring Boot 入门——Spring Boot 简介||微服务简介
- 教你创建高大上的多边形字体
- Python 技巧篇-同一个方法多次引用不同效果功能实现,可选参数设置方法
- 按键处理技巧(状态机)