PLSQL-sql操作&判断循环
时间:2022-07-25
本文章向大家介绍PLSQL-sql操作&判断循环,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
PL/SQL中SQL操作
- sql%rowcount属性:实际在sql操作过程中开起了隐式游标,表示最近执行的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(变量占位符)
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 语句
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;
参考
http://www.cnblogs.com/hoojo/archive/2011/05/03/2035357.html
喜欢 (1)or分享 (0)
- Git命令速记
- linux设备驱动第三篇:如何写一个简单的字符设备驱动
- Tensorflow高级API的进阶--利用tf.contrib.learn建立输入函数
- Spring速查手册(三)——Spring+JDBC
- [WebKit] JavaScriptCore解析--基础篇(一)字节码的生成及抽象语法树的构建详情分析
- Spring速查手册(二)——Bean的作用域
- pyTorch自然语言处理简单例子
- 一文初探Tensorflow高级API使用(初学者篇)
- Spring速查手册——Bean装配
- 回溯法(一)——n皇后问题
- 图的邻接表示法Java版
- 图的遍历(BFS+DFS)
- 工厂模式
- Oracle 12.2新特性 | 基于权重的节点驱逐
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Android自定义橡皮擦效果
- Android Canvas drawText文字居中的一些事(图解)
- Nginx+keepalived一主一从高可用,手把手带你一步一步配置!
- Behave!:一款针对页面活动的浏览器监控插件
- R可视化 | 地理信息空间(上)
- Nautilus:一款基于语法的反馈式模糊测试工具
- R可视化 | 地理信息空间(下)
- 21页优雅读博指南:佐治亚理工学院助理教授Eric Gilbert撰写,入坑前必读
- Too old resource version 引起 Flink JobManager 崩溃的问题定位
- SharpHose:一款基于C#开发的Windows异步密码喷射工具
- PyTorch版YOLOv4更新了,不仅适用于自定义数据集,还集成了注意力和MobileNet
- 一行代码不用写,就可以训练、测试、使用模型,这个star量1.5k的项目帮你做到
- Android画板开发之橡皮擦功能
- Android画板开发之基本画笔功能
- python递归函数求n的阶乘,优缺点及递归次数设置方式