Oracle中绑定变量的简单性能测试

Oracle游标绑定变量应用 绑定变量:using → 只需要解析一次; BEGIN EXECUTE IMMEDIATE 'update emp set sal=sal*2 where empno=:p_empno' USING &p_eno; COMMIT; END; 注意:不能使用绑定变量替换实际的数据库对象名(表,视图,列等),只能替换字面量, 如果对象名是在运行时生成的,我们仍然需要对其用字符串拼接,同时 阅读详情
 
都是向一个表里面插入1000条数据。

create table t(x int);

带参数的存储过程
create or replace procedure proc1
 as
 begin
 for i in 1 .. 1000
 loop
 execute immediate
 'insert into t values(:x)' using i;
 end loop;
 end;
/
不带参数的存储过程
create or replace procedure proc2
 as
  begin
    for i in 1 .. 1000
    loop
      execute immediate
      'insert into t values('||i||')';
    end loop;
  end;


运行看看结果:

SQL> exec proc2;

PL/SQL 过程已成功完成。

已用时间: 00: 00: 00.40
SQL> exec proc1;

PL/SQL 过程已成功完成。

已用时间: 00: 00: 00.03
SQL> exec proc2;

PL/SQL 过程已成功完成。

已用时间: 00: 00: 00.23
SQL> exec proc1;

PL/SQL 过程已成功完成。

已用时间: 00: 00: 00.01
SQL>


结论
使用带参数的SQL,性能比不带参数的高10-20倍。也许没有这么悬殊,但差距绝对应该是很明显的。
PLSQL绑定变量用法小结归纳.pdf 立即下载

相关推荐

贝莱德(BlackRock)—— 阿拉丁(Aladdin)平台的 AI 赋能升级

全称(资产、负债、债务与衍生品投资网络),是贝莱德自主研发的一体化投资管理与风险管理技术平台,被誉为全球资管行业的 “

xm_mm的博客 1736

Oracle绑定变量

变量绑定会使OLTP系统数据库中的SQL 执行速度飞快,内存效率极高;不使用绑定变量可能会使OLTP 数据库不堪重负,资源被SQL解析严重耗尽,系统运行缓慢。对OLTP和OLAP不了解的可以查看这篇文章:OLTP vs OLAP。首先理解一下为什么需要绑定变量?

优快云1csdn1的博客 1353

如何用python开发“跳一跳”游戏【附源码】

jump_start_time = pygame.time.get_ticks() # 记录跳跃开始时间。jump_duration = current_time - jump_start_time # 计算跳跃持续时间。current_time = pygame.time.get_ticks() # 获取当前时间。jump_velocity = -15 # 设置跳跃的初始速度。# 如果小球跳跃结束,重置跳跃状态。# 根据跳跃持续时间计算跳跃高度。# 移除超出屏幕的障碍物。

helloshili2011的博客 2497

oracle中绑定变量测试

从一个简单的示例入手: 创建测试表 create table t1 as select * from dba_objects; 使用一段java 代码做测试。 package dbtest; import java.sql.*; public class Dbtest { public static final String drive = "oracle.jdbc.dri...

weixin_30783629的博客 158

深入解析安卓性能分析工具systrace/atrace的使用技巧与实战场景

本文深入解析了安卓性能分析工具systrace/atrace的核心使用技巧与实战场景。文章澄清了环境搭建的常见误区,详细拆解了命令参数,并通过列表卡顿、启动优化等具体案例,手把手指导开发者利用这些工具精准定位性能瓶颈,提升应用流畅度。

yyy34的博客 240

matlab球面投影(二)

matlab球面投影,想做一个全景相机,不知道,要做成啥样,于是在MATLAB先仿真一下,看下是个啥样子 百度别人做的,复制下面的代码到MATLAB的命令串口下,,网上找了张全景图,可以是bmp,jpg,改程序就可以了 回车运行就可以看到结果。 复制下面代码时,下面的中文注释记得删除,MATLAB是会报错的, close all; clear all; clc [x,y,z]=sphere(50); A=imread('a.JPG'); //名字是自己命名的,记得改 B=warp(x,y,-z,

rjszcb的博客 3165

关于oracle绑定变量的测试

使用绑定变量可以减少硬解析,所以在客户端执行SQL语句时一般会写成绑定变量的形式,以增加SQL执行效率。 但在存储过程中要不要使用绑定变量,心中一直比较疑惑,前两天吃饭时和大叔聊了下,他说过程中两者应该没太大区别,又增加我一丝疑惑。今天兴致来了打算自己测下。

637

用AG9311芯片DIY一个多功能Type-C扩展坞:从原理图到PCB布局的保姆级指南

本文详细介绍了如何利用AG9311芯片DIY多功能Type-C扩展坞,涵盖从原理图设计到PCB布局的全过程。AG9311芯片作为高性价比的Type-C控制器,支持HDMI 2.0、USB 3.0、PD快充和千兆网口,适合硬件爱好者打造个性化扩展坞。文章还提供了调试技巧和进阶优化建议,帮助读者轻松完成项目。

weixin_42520909的博客 406

oracle绑定变量的测试

绑定变量的测试[@more@]10:16:39 scott@bus> select * from v$version10:16:54 2 ;BANNER===================================...

cixunbi3035的博客 157

从零构建XVC协议栈:FPGA+W5300的跨界调试架构实战

本文详细介绍了如何从零构建XVC协议栈,通过FPGA与W5300以太网控制器的创新组合实现跨界调试架构。重点解析了JTAG时序逆向、TCP/IP协议栈集成与XVC协议实现,提供了硬件设计优化和性能加速技术,为嵌入式开发者和FPGA工程师提供实用的远程调试解决方案。

raspberrypi5的博客 251

[QMT量化交易小白入门]-九、如何用Python记录每一笔交易和调试,报错信息?

定义一个函数来获取日志记录器。: 返回全局的日志记录器,以便在其他地方调用。

木头大左的博客 2144

【PLSQL】绑定变量,活跃SQL,软硬解析解析

************************************************************************   ****原文:blog.youkuaiyun.com/clark_xu 徐长亮的专栏 ************************************************************************ ...

weixin_33936401的博客 202

【100%通过率】华为机试真题 Python 实现【对称美学】【2022.11 Q4 新题】

对称就是最大的美学,现有一道关于对称字符串的美学。 已知: 第1个字符串:R 第2个字符串:BR 第3个字符串:RBBR 第4个字符串:BRRBRBBR 第5个字符串:RBBRBRRBBRRBRBBR相信你已经发现规律了,没错! 就是第i个字符串=第i-1号字符串的取反+第i-1号字符串。取反即(R->B,B->R); 现在告诉你n和k,让你求得第n个字符串的第k个字符是多少。(k的编号从0开始)

MISAYAONE的博客 1万+

python怎么做性能测试_用python对oracle进行简单性能测试

这篇文章我们来讲一下在网站建设中,用python对oracle进行简单性能测试。本文对大家进行网站开发设计工作或者学习都有一定帮助,下面让我们进入正文。一、概述dba在工作中避不开的两个问题,sql使用绑定变量到底会有多少的性能提升?数据库的审计功能如果打开对数据库的性能会产生多大的影响?最近恰好都碰到了,索性做个实验。sql使用绑定变量对性能的影响开通数据库审计功能对性能的影响实验采用的办法很简...

weixin_39659748的博客 108

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

oracle绑定变量 java_oracle中绑定变量测试

从一个简单的示例入手:创建测试表create table t1 as select * from dba_objects;使用一段java 代码做测试。package dbtest;import java.sql.*;public class Dbtest {public static final String drive = "oracle.jdbc.driver.OracleDriver";p...

weixin_35318150的博客 323

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

解决oracle绑定变量重复,基于ORACLE SQL优化之绑定变量(4)

绑定变量的使用过程当中,oracle建议绑定变量的个数不宜太多。目标SQL的SQL文本中的绑定变量个数不宜太多,否则可能会导致目标SQL总的执行时间大幅度的增长。增长的时间主要消耗在执行目标SQL时对每一个绑定变量都用其实际的值来替换(这个过程就是所谓的绑定变量值替换),目标SQL的SQL文本中的绑定变量的个数越多,这个替换过程所消耗的时间就越长,该SQL总的执行时间也就越长。如下为测试示例:创...

weixin_36336411的博客 535

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

Oracle游标绑定变量使用

--3.2 绑定变量:using → 只需要解析一次; BEGIN EXECUTE IMMEDIATE 'update emp set sal=sal*2 where empno=:p_empno' USING &p_eno; COMMIT; END; 注意:不能使用绑定变量替换实际的数据库对象名(表,视图,列等),只能替换字面量, 如果对象名是在运行时生成的,我们仍然需要对...

liuhuasheng的专栏 292

绑定变量

在开发中,如果不使用绑定变量,会给系统带来灾难性的后果,因为我们写的每一条sql都会经过解析,但是这个过程很占用cpu,解析过得sql 会放在共享池的Library Cache里,如果不使用绑定变量的话,每一条sql都会解析一次(硬解析),不会被重复使用,这样会大大降低oracle的性能。使用绑定变量,sql语句只会解析一次(软解析)。 下面通过列子说明使用和不使用绑定变量给系统带来的性能问

diy_os的专栏 657

oracle如果插入id重复不进行操作_动态SQL不绑定变量的影响

ORACLE可以用EXECUTE IMMEDIATE来执行动态SQL,但在动态SQL中如果涉及到变量,一定要使用USING方法来绑定变量,不能直接把变量拼接到SQL执行,否则会严重影响执行的性能。动态SQL不绑定变量,即直接拼接变量到SQL,会导致每次执行的SQL都不一样,每次执行时数据库都要重新解析SQL,一方面解析SQL是要花费一定代价的,减慢了执行的速度,另外一方面解释完的SQL会放在数据库...

weixin_39778447的博客 467

Oracle 绑定变量 示例

绑定变量对Oracle 的性能来说是非常重要的,之前有整理一些理论知识: Oracle 绑定变量 详解 http://blog.youkuaiyun.com/tianlesoftware/archive/2010/09/01/5856430.aspx Event 10053 执行计划 绑定变量 Bind peeking http://blog.youkuaiyun.com/tianlesoft...

hunxiejun 77

python编写oracle_用python对oracle进行简单性能测试

一、概述dba在工作中避不开的两个问题,sql使用绑定变量到底会有多少的性能提升?数据库的审计功能如果打开对数据库的性能会产生多大的影响?最近恰好都碰到了,索性做个实验。sql使用绑定变量对性能的影响开通数据库审计功能对性能的影响实验采用的办法很简单,就是通过python读取csv文件,然后将其导入到数据库中,最后统计程序执行完成所需要的时间二、准备脚本python脚本dataimporttest...

weixin_35452206的博客 266

python读取oracle数据库性能_用python对oracle进行简单性能测试

一、概述dba在工作中避不开的两个问题,sql使用绑定变量到底会有多少的性能提升?数据库的审计功能如果打开对数据库的性能会产生多大的影响?最近恰好都碰到了,索性做个实验。sql使用绑定变量对性能的影响开通数据库审计功能对性能的影响实验采用的办法很简单,就是通过python读取csv文件,然后将其导入到数据库中,最后统计程序执行完成所需要的时间二、准备脚本python脚本dataimporttest...

weixin_29586681的博客 419

python远程连接oracle 速度_用python对oracle进行简单性能测试

一、概述dba在工作中避不开的两个问题,sql使用绑定变量到底会有多少的性能提升?数据库的审计功能如果打开对数据库的性能会产生多大的影响?最近恰好都碰到了,索性做个实验。sql使用绑定变量对性能的影响开通数据库审计功能对性能的影响实验采用的办法很简单,就是通过python读取csv文件,然后将其导入到数据库中,最后统计程序执行完成所需要的时间二、准备脚本python脚本dataimporttest...

weixin_39891438的博客 119

python远程连接oracle 速度_使用python对oracle进行简单性能测试

一、概述dba在工作中避不开的两个问题,sql使用绑定变量到底会有多少的性能提升?数据库的审计功能如果打开对数据库的性能会产生多大的影响?最近恰好都碰到了,索性做个实验。sql使用绑定变量对性能的影响开通数据库审计功能对性能的影响实验采用的办法很简单,就是通过python读取csv文件,然后将其导入到数据库中,最后统计程序执行完成所需要的时间二、准备脚本python脚本dataimporttest...

weixin_39630909的博客 213

python导数据库性能怎么样_用python对oracle进行简单性能测试

一、概述dba在工作中避不开的两个问题,sql使用绑定变量到底会有多少的性能提升?数据库的审计功能如果打开对数据库的性能会产生多大的影响?最近恰好都碰到了,索性做个实验。sql使用绑定变量对性能的影响开通数据库审计功能对性能的影响实验采用的办法很简单,就是通过python读取csv文件,然后将其导入到数据库中,最后统计程序执行完成所需要的时间二、准备脚本python脚本dataimporttest...

weixin_39999116的博客 87

绑定变量!

在OLTP系统中,应该尽可能的使用绑定变量。在OLAP系统中,绑定变量不是必须的,相反,如果使用了反而可能带来副作用。 下面的例子对比了一下一条sql被执行10000次时,绑定变量和非绑定变量在资源消耗上的情况: SQL> alter session set sql_trace = true; 会话已更改。 SQL> begin 2 for x in 1 .. 10000

事后诸葛亮的程序人生(微信:zq9017197) 631
上一篇: 测试一台机器多个IP,相同端口的服务侦听
下一篇: 每日IN语(2009-01-04)
老紫竹
博客等级 码龄19年 1万+粉丝 1252原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值